PHP extract 将数组拆分成多个变量的函数

2015-01-24信息快讯网
extract()函数语法:
int extract( array $var_array [, int $extract_type = EXTR_OVERWRITE [, string $prefix ]] )
功能: extract()函数提取关联数组(对数字索引数组无效)每对key和value,生成以key为变量名、value为对应值的多组新变量。
 
<?php 
$size = "old size"; //注意最后size变量的值。 
$a = array( 
"color" => "red", 
"size" => "XXL", 
"price" => "53"); 
extract($a); 
echo "color = $color<br />"; 
echo "size = $size<br />"; 
echo "price = $price<br />"; 
?> 


结果为:

color = red
size = XXL
price = 53

通过上例发现$size的值为XXL,而不是之前的”old size”,说明默认情况下当数组中的key与已有的变量冲突时,将覆盖原来的变量。

继续介绍extract函数的后两个可选参数。

第二个参数$extract_type是用来控制当发生冲突时的处理方法,可能的值为:

EXTR_OVERWRITE : 冲突时覆盖已有的变量,默认值。
EXTR_SKIP : 不覆盖已有的变量,即不在生成该key和value对的变量。
EXTR_PREFIX_SAME : 冲突时,生成的新变量名加一个前缀字符串,其值由第三个参数指定。
EXTR_PREFIX_ALL : 对所有生成的新变量名加一个前缀字符串,其值由第三个参数指定。
EXTR_PREFIX_INVALID : 对key的值换为变量名时无效时(如key第一个字符为数字,而变量名要求第一个字符不能为数字),在变量名加一个前缀字符串,其值由第三个参数指定。
EXTR_IF_EXISTS : 只取出之前已经存在的变量。
EXTR_PREFIX_IF_EXISTS : 对EXTR_IF_EXISTS取得的变量,在其变量名加一个前缀字符串,其值由第三个参数指定。
EXTR_REFS : 以引用的方式提取变量,说明提取变量的值发生改变会影响原数组的值。

注意:在变量名加前缀字符串时,新的变量名为 PREFIX_key,而不是PREFIXkey。

 
<?php 
$a = array( 
"color" => "red", 
"size" => "XXL", 
"price" => "53"); 
extract($a,EXTR_PREFIX_ALL,"SC"); 
echo "color = $SC_color<br />"; 
echo "size = $SC_size<br />"; 
echo "price = $SC_price<br />"; 
extract($a,EXTR_REFS); 
$color="green"; 
echo $a['color']; //查看原数组的值 
?> 

结果为:
color = red
size = XXL
price = 53
green
PHP中extract()函数的定义和用法
PHP中extract()函数的妙用分析
PHPWind与Discuz截取字符函数substrs与cutstr性能比较
PHP中strtotime函数使用方法详解
php empty() 检查一个变量是否为空
PHP中文处理 中文字符串截取(mb_substr)和获取中文字符串字数
php数组函数序列之next() - 移动数组内部指针到下一个元素的位置,并返回该元素值
php数组函数序列之array_key_exists() - 查找数组键名是否存在
提示Trying to clone an uncloneable object of class Imagic的解决
PHP中的strtr函数使用介绍(str_replace)
PHP 命令行工具 shell_exec, exec, passthru, system详细使用介绍
php正则表达式(regar expression)
php程序的国际化实现方法(利用gettext)
PHP里的中文变量说明
PHP中获取变量的变量名的一段代码的bug分析
php基础学习之变量的使用
php学习之变量的使用
PHP 数组遍历方法大全(foreach,list,each)
PHP 反向排序和随机排序代码
php中static静态变量的使用方法详解
PHP stristr() 函数(不区分大小写的字符串查找)
php strstr查找字符串中是否包含某些字符的查找函数
php trim 去除空字符的定义与语法介绍
PHP similar_text 字符串的相似性比较函数
php imagecreatetruecolor 创建高清和透明图片代码小结
php file_exists 检查文件或目录是否存在的函数
php将数据库导出成excel的方法
在PHP中操作Excel实例代码
php strcmp使用说明
Ext.data.PagingMemoryProxy分页一次性读取数据的实现代码
认识并使用PHP超级全局变量
php 静态变量与自定义常量的使用方法
php学习之 认清变量的作用范围
PHP 变量的定义方法
PHP中的extract的作用分析
©2014-2024 dbsqp.com