Home Backend Development PHP Tutorial PHP extract() function

PHP extract() function

Nov 22, 2016 am 09:27 AM

Definition and usage

PHP extract() function imports variables from the array into the current symbol table.

For each element in the array, the key name is used for the variable name and the key value is used for the variable value.

The second parameter type is used to specify how the extract() function treats such a conflict when a variable already exists and there is an element with the same name in the array.

This function returns the number of successfully set variables.

Syntax

extract(array,extract_rules,prefix)

Parameter Description

array Required. Specifies the inputs to use

extract_rules

Optional. The extract() function will check whether each key name is a legal variable name, and also checks whether it conflicts with the variable name in the symbol table.

The handling of illegal, numeric and conflicting key names will be determined based on this parameter. Can be one of the following values:

Possible values:

EXTR_OVERWRITE - Default. If there is a conflict, existing variables are overwritten.

EXTR_SKIP - Do not overwrite existing variables if there is a conflict. (Ignore elements with the same name in the array)

EXTR_PREFIX_SAME - If there is a conflict, prefix the variable name with prefix. As of PHP 4.0.5, this also includes handling of numeric indexes.

EXTR_PREFIX_ALL - Prefix all variable names with prefix (third parameter).

EXTR_PREFIX_INVALID - Prefix only illegal or numeric variable names. This tag is newly added in PHP 4.0.5.

EXTR_IF_EXISTS - Only overwrite the values ​​of variables with the same name if they already exist in the current symbol table. Others are not processed. It can be used when a set of legal variables has been defined, and then you want to overwrite these variables by extracting values ​​from an array such as $_REQUEST. This tag is newly added in PHP 4.2.0.

EXTR_PREFIX_IF_EXISTS - Only when there is a variable with the same name in the current symbol table, the variable name with the prefix will be created, and the others will not be processed. This tag is newly added in PHP 4.2.0.

EXTR_REFS - Extract variables as references. This is a strong indication that the imported variable still references the value of the var_array parameter. This flag can be used alone or in combination with any other flag using OR in extract_type. This tag is newly added in PHP 4.3.0.

prefix

Optional. Note that prefix is ​​only required if the value of extract_type is EXTR_PREFIX_SAME, EXTR_PREFIX_ALL, EXTR_PREFIX_INVALID or EXTR_PREFIX_IF_EXISTS. If the result after appending the prefix is ​​not a legal variable name, it will not be imported into the symbol table.

An underscore will be automatically added between the prefix and the array key name.

Example 1

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

Output:

$a = Cat; $b = Dog; $c = Horse

Example 2

Use 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;";
?>

Output:

$a = Original; $b = Dog; $c = Horse; $dup_a = Cat;


Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot Article Tags

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

11 Best PHP URL Shortener Scripts (Free and Premium) 11 Best PHP URL Shortener Scripts (Free and Premium) Mar 03, 2025 am 10:49 AM

11 Best PHP URL Shortener Scripts (Free and Premium)

Working with Flash Session Data in Laravel Working with Flash Session Data in Laravel Mar 12, 2025 pm 05:08 PM

Working with Flash Session Data in Laravel

Build a React App With a Laravel Back End: Part 2, React Build a React App With a Laravel Back End: Part 2, React Mar 04, 2025 am 09:33 AM

Build a React App With a Laravel Back End: Part 2, React

Simplified HTTP Response Mocking in Laravel Tests Simplified HTTP Response Mocking in Laravel Tests Mar 12, 2025 pm 05:09 PM

Simplified HTTP Response Mocking in Laravel Tests

cURL in PHP: How to Use the PHP cURL Extension in REST APIs cURL in PHP: How to Use the PHP cURL Extension in REST APIs Mar 14, 2025 am 11:42 AM

cURL in PHP: How to Use the PHP cURL Extension in REST APIs

12 Best PHP Chat Scripts on CodeCanyon 12 Best PHP Chat Scripts on CodeCanyon Mar 13, 2025 pm 12:08 PM

12 Best PHP Chat Scripts on CodeCanyon

Announcement of 2025 PHP Situation Survey Announcement of 2025 PHP Situation Survey Mar 03, 2025 pm 04:20 PM

Announcement of 2025 PHP Situation Survey

Notifications in Laravel Notifications in Laravel Mar 04, 2025 am 09:22 AM

Notifications in Laravel

See all articles