php从数组中提取变量的函数及应用实例

发布时间:2019-08-21编辑:脚本学堂
在php中,使用extract函数将变量从数组中导入到当前的符号表中。本函数有3个参数,其函数原型如下:int extract (array [, int $extract_type [, string $prefix]])

在php中,使用extract函数将变量从数组中导入到当前的符号表中。
本函数有3个参数,其函数原型如下:
int extract (array [, int $extract_type [, string $prefix]])

extract函数接受结合数组$array作为参数,并将其键名作为变量名,值作为变量的值。对每个键/值对都会在当前的符号表中建立变量。
先来看一个extract应用的例子:
 

复制代码 代码如下:
<?php
$info = array(
   "user_id"=>20130113",
   "user_name"=>"jbxue",
   "position"=>"beijing"
   );
   extract($info);
?>

则转换后的结果为:
$user_id = 20130113;
$user_name = "jbxue";
$position = "beijing";

当程序中包含了与数组元素键名相同的变量时,转换将与已存在的变量发生冲突。为了解决这种冲突,可以配置extract()函数的后两个参数,从而产生不同的输出结果。
下面为大家提供参数$extract_type的可取值及含义,EXTR_OVERWRITE是参数的默认值。
extract

最后,extract()函数将返回成功提取的变量的数目。

参数$prefix仅在$extract_type为下列值时有效:EXTR_PREFIX_SAME,EXTR_PREFIX_ALL,EXTR_PREFIX_INVALID或EXTR_PREFIX_IF_EXISTS。如果附加了前缀后的结果不是合法的变量名,将不会转换为对应的变量。

来看一个extract()函数给出全部的参数时的应用例子:
 

复制代码 代码如下:

<?php
$province = "北京";
$array = array(
    "name"=>"我的那个她",
    "province"=>"河北",
    "age"=>21
);

//解析输出
extract($array, EXTR_PREFIX_SAME, "user");
print "$name, $province, $age, $user_province); //输出 ”我的那个她,北京,25,河北“
?>

您可能感兴趣的文章:
php创建数组的方法介绍
php使用array_unique判断数组中是否存在相同的值
php数组函数 in_array() 查找数组中是否存在指定值
php数组函数array_key_exists() 查找数组键名是否存在
php数组去重的小例子
php函数array_merge ()用法一例(合并同类数组)
有关php数组及循环的小例子
php在多维数组中查找特定的value的方法
加强版的array_unique函数(支持二维数组)
php数组回调过滤函数array_filter()的应用实例
php增加与删除数组元素的方法