Home > Backend Development > PHP Problem > How to use php extract function

How to use php extract function

青灯夜游
Release: 2023-02-22 19:56:01
Original
3852 people have browsed it

extract()函数是PHP中的一个内置函数,用于从数组中将变量导入到当前的符号表。也就是说,它将数组键转换为变量名称,将数组值转换为变量值。针对数组中的每个元素,将在当前符号表中创建对应的一个变量。

How to use php extract function

php extract()函数怎么用?

extract() 函数从数组中将变量导入到当前的符号表,使用数组键名作为变量名,使用数组键值作为变量值。针对数组中的每个元素,将在当前符号表中创建对应的一个变量。

该函数返回成功设置的变量数目。

语法

extract(array,extract_rules,prefix)
Copy after login

参数:extract()函数接受三个参数,其中一个是强制的,另外两个是可选的。

1、input_array:此参数是必需的。这指定要使用的数组。

2、extract_rule:此参数是可选的。extract()函数检查无效的变量名称和与现有变量名称的冲突。此参数指定如何处理无效和冲突的名称。此参数可以采用以下值:

 ● EXTR_OVERWRITE:此规则告知如果发生冲突,则覆盖现有变量。

 ● EXTR_SKIP:此规则告知如果发生冲突,请勿覆盖现有变量。

 ● EXTR_PREFIX_SAME:此规则告知如果存在冲突,则根据prefix参数为变量名添加前缀。

 ● EXTR_PREFIX_ALL:此规则告诉所有变量名前缀为prefix参数。

 ● EXTR_PREFIX_INVALID:此规则根据参数prefix告知只有前缀无效/数字变量名称。

 ● EXTR_IF_EXISTS:此规则告知只有当变量已存在于当前符号表中时才覆盖该变量,否则不执行任何操作。

 ● EXTR_PREFIX_IF_EXISTS:仅当当前符号表中存在同一变量的非前缀版本时,此规则才会创建前缀变量名称。

3、prefix:此参数是可选的。此参数指定前缀。前缀通过下划线字符自动与数组键分隔。此参数仅在参数extract_rule设置为EXTR_PREFIX_SAME,EXTR_PREFIX_ALL,EXTR_PREFIX_INVALID或EXTR_PREFIX_IF_EXISTS时才需要。

返回值:返回成功设置的变量数目。

下面通过示例来看看php extract()函数的使用方法。

示例1:

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

输出:

$a = Cat; $b = Dog; $c = Horse
Copy after login

示例2:

<?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";
?>
Copy after login

输出:

$a = Original; $b = Dog; $c = Horse; $dup_a = Cat
Copy after login

The above is the detailed content of How to use php extract function. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
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
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template