用户名:
密 码: 记住
您当前的位置:首页 > 网络编程 > php教程

php extract()函数把数据中变量转换成php变量

时间:2015-01-23  来源:西部数据  作者:西部数据

PHP extract() 函数从数组中把变量导入到当前的符号表中,对于数组中的每个元素,键名用于变量名,键值用于变量值,第二个参数 type 用于指定当某个变量已经存在,而数组中又有同名元素时,extract() 函数如何对待这样的冲突.

将变量从PHP数组导出注册为全局变量,实现键名当作变量名,值作为变量的值,代码如下:

$vars = array('var1'=>'1','var2'=>'2','var3'=>'3','var4'=>'4','var5'=>'5');

实现通过键名当作变量名的形式访问,如:$var1,$var2

第一种方案:采用PHP内置extract()函数,方法如下:

extract($vars);

第二种方案:采用foreach循环数组注册为全局变量,方法如下:

  1. foreach($vars as $k=>$v){  
  2.     $GLOBALS[$k] = $v;  

推荐采用第二种方案,因为extract()函数存在性能和安全问题.

extract() 函数说明:(PHP 3 >= 3.0.7, PHP 4, PHP 5)

extract -- 从数组中将变量导入到当前的符号表,代码如下:

int extract(array var_array [,int extract_type [,string prefix]])

本函数用来将变量从数组中导入到当前的符号表中,接受结合数组 var_array 作为参数并将键名当作变量名,值作为变量的值,对每个键/值对都会在当前的符号表中建立变量,并受到 extract_type 和 prefix 参数的影响.

使用全部参数,代码如下:

  1. <?php 
  2. $a = 'Original'
  3. $my_array = array("a" => "Cat","b" => "Dog""c" => "Horse"); 
  4. extract($my_array, EXTR_PREFIX_SAME, 'dup'); 
  5. echo "$a = $a; $b = $b; $c = $c; $dup_a = $dup_a;"
  6. ?>//开源软件:phpfensi.com 
  7. //输出: 
  8. $a = Original; $b = Dog; $c = Horse; $dup_a = Cat;
来顶一下
返回首页
返回首页
推荐资讯
WiFi太不安全:7岁女孩11分钟内入侵公共网络 WiFi太不安全:7岁女孩11分钟内入侵近期刚刚发布研究说WiFi网络能获得人们手机里多少私人信息,
不服跑个分?人工智能也出现“刷分”乱象 不服跑个分?人工智能也出现“刷分2014年,人工智能领域突然爆发,成为了科研和科技创业的热门
相关文章
栏目更新
栏目热门