PHP extract() function
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
$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:
$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;

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

Alipay PHP...

Session hijacking can be achieved through the following steps: 1. Obtain the session ID, 2. Use the session ID, 3. Keep the session active. The methods to prevent session hijacking in PHP include: 1. Use the session_regenerate_id() function to regenerate the session ID, 2. Store session data through the database, 3. Ensure that all session data is transmitted through HTTPS.

JWT is an open standard based on JSON, used to securely transmit information between parties, mainly for identity authentication and information exchange. 1. JWT consists of three parts: Header, Payload and Signature. 2. The working principle of JWT includes three steps: generating JWT, verifying JWT and parsing Payload. 3. When using JWT for authentication in PHP, JWT can be generated and verified, and user role and permission information can be included in advanced usage. 4. Common errors include signature verification failure, token expiration, and payload oversized. Debugging skills include using debugging tools and logging. 5. Performance optimization and best practices include using appropriate signature algorithms, setting validity periods reasonably,

The application of SOLID principle in PHP development includes: 1. Single responsibility principle (SRP): Each class is responsible for only one function. 2. Open and close principle (OCP): Changes are achieved through extension rather than modification. 3. Lisch's Substitution Principle (LSP): Subclasses can replace base classes without affecting program accuracy. 4. Interface isolation principle (ISP): Use fine-grained interfaces to avoid dependencies and unused methods. 5. Dependency inversion principle (DIP): High and low-level modules rely on abstraction and are implemented through dependency injection.

How to debug CLI mode in PHPStorm? When developing with PHPStorm, sometimes we need to debug PHP in command line interface (CLI) mode...

How to automatically set the permissions of unixsocket after the system restarts. Every time the system restarts, we need to execute the following command to modify the permissions of unixsocket: sudo...

Static binding (static::) implements late static binding (LSB) in PHP, allowing calling classes to be referenced in static contexts rather than defining classes. 1) The parsing process is performed at runtime, 2) Look up the call class in the inheritance relationship, 3) It may bring performance overhead.

Sending JSON data using PHP's cURL library In PHP development, it is often necessary to interact with external APIs. One of the common ways is to use cURL library to send POST�...
