Curriculum
Course: PHP Basic
Login

Curriculum

PHP Basic

PHP Install

0/1

PHP Casting

0/1

PHP Constants

0/1

PHP Magic Constants

0/1

PHP Operators

0/1

PHP Reference

0/276
Text lesson

extract()

Example

Assign the values “Cat”, “Dog”, and “Horse” to the variables $a, $b, and $c, respectively.

<?php
$a = “Original”;
$my_array = array(“a” => “Cat”,“b” => “Dog”“c” => “Horse”);
extract($my_array);
echo “\$a = $a; \$b = $b; \$c = $c”;
?>

Definition and Usage

The extract() function imports variables from an array into the local symbol table.

It uses the array keys as variable names and the values as the corresponding variable values, creating a variable for each element in the current symbol table.

The function returns the number of variables successfully extracted.

Syntax

extract(array, extract_rules, prefix)

Parameter Values

 

Parameter

Description

array

Required. Specifies the array to use.

extract_rules

Optional. The extract() function checks for invalid variable names and collisions with existing variable names. This parameter specifies how invalid and colliding names are treated.

Possible values:

  • EXTR_OVERWRITE – Default. On collision, the existing variable is overwritten
  • EXTR_SKIP – On collision, the existing variable is not overwritten
  • EXTR_PREFIX_SAME – On collision, the variable name will be given a prefix
  • EXTR_PREFIX_ALL – All variable names will be given a prefix
  • EXTR_PREFIX_INVALID – Only invalid or numeric variable names will be given a prefix
  • EXTR_IF_EXISTS – Only overwrite existing variables in the current symbol table, otherwise do nothing
  • EXTR_PREFIX_IF_EXISTS – Only add prefix to variables if the same variable exists in the current symbol table

EXTR_REFS – Extracts variables as references. The imported variables are still referencing the values of the array parameter

prefix

Optional. If EXTR_PREFIX_SAME, EXTR_PREFIX_ALL, EXTR_PREFIX_INVALID, or EXTR_PREFIX_IF_EXISTS are used in the extract_rules parameter, a prefix must be specified.

 

This parameter sets the prefix, which is automatically separated from the array key by an underscore.

Technical Details

Return Value:

Returns  the number of variables extracted on success

PHP Version:

4+

PHP Changelog:

The extract_rules value EXTR_REFS was added in PHP 4.3.

The extract_rules values EXTR_IF_EXISTS and EXTR_PREFIX_IF_EXISTS were added in PHP 4.2.

As of PHP 4.0.5, this function now returns the number of variables extracted.

The extract_rules value EXTR_PREFIX_INVALID was added in PHP 4.0.5.

As of PHP 4.0.5, the extract_rules value EXTR_PREFIX_ALL now includes numeric variables as well.

More Examples

Example

Using all parameters:

<?php
$a = “Original”;
$my_array = array(“a” => “Cat”“b” => “Dog”“c” => “Horse”);

extract($my_array, EXTR_PREFIX_SAME, “dup”);

echo “\$a = $a; \$b = $b; \$c = $c; \$dup_a = $dup_a”;
?>