php 数组处理函数extract详解及实例代码


Posted in PHP onNovember 23, 2016

php 数组处理函数extract

extract函数用于从数组中将变量导入到当前的符号表

基本语法

int extract ( array &$var_array [, int $extract_type = EXTR_OVERWRITE [, string $prefix = NULL ]] )

本函数用来将变量从数组中导入到当前的符号表中。检查每个键名看是否可以作为一个合法的变量名,同时也检查和符号表中已有的变量名的冲突。

参数介绍:

参数 描述
var_array 必需。规定要使用的数组。 一个关联数组。此函数会将键名当作变量名,值作为变量的值。 对每个键/值对都会在当前的符号表中建立变量,并受到 extract_type 和 prefix 参数的影响。 必须使用关联数组,数字索引的数组将不会产生结果,除非用了 EXTR_PREFIX_ALL 或者 EXTR_PREFIX_INVALID 。
extract_type 可选。extract() 函数将检查每个键名是否为合法的变量名,同时也检查和符号表中已存在的变量名是否冲突。对不合法和冲突的键名的处理将根据此参数决定。 可能的值: EXTR_OVERWRITE - 默认。如果有冲突,则覆盖已有的变量。 EXTR_SKIP - 如果有冲突,不覆盖已有的变量。 EXTR_PREFIX_SAME - 如果有冲突,在变量名前加上前缀 prefix。 EXTR_PREFIX_ALL - 给所有变量名加上前缀 prefix。 EXTR_PREFIX_INVALID - 仅在不合法或数字变量名前加上前缀 prefix。 EXTR_IF_EXISTS - 仅在当前符号表中已有同名变量时,覆盖它们的值。其它的都不处理。 EXTR_PREFIX_IF_EXISTS - 仅在当前符号表中已有同名变量时,建立附加了前缀的变量名,其它的都不处理。 EXTR_REFS - 将变量作为引用提取。导入的变量仍然引用了数组参数的值。
prefix 可选。注意 prefix 仅在 extract_type 的值是 EXTR_PREFIX_SAME ,EXTR_PREFIX_ALL , EXTR_PREFIX_INVALID 或 EXTR_PREFIX_IF_EXISTS 时需要。 如果附加了前缀后的结果不是合法的变量名,将不会导入到符号表中。前缀和数组键名之间会自动加上一个下划线。

返回值

返回成功导入到符号表中的变量数目。

实例:

<?php
$size = "large";
$var_array = array(
  "color" => "blue",
  "size" => "medium",
  "shape" => "sphere"
);
extract($var_array, EXTR_PREFIX_SAME, "wddx");
echo " $color , $size , $shape , $wddx_size <br/>";
?>

运行结果:

blue, large, sphere, medium

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

PHP 相关文章推荐
如何把PHP转成EXE文件
Oct 09 PHP
php URL编码解码函数代码
Mar 10 PHP
php设计模式 Strategy(策略模式)
Jun 26 PHP
PHP 无限分类三种方式 非函数的递归调用!
Aug 26 PHP
PHP 时间日期操作实战
Aug 26 PHP
分享一下贝贝成长进度的php代码
Sep 14 PHP
php获取随机数组列表的方法
Nov 13 PHP
PHP中round()函数对浮点数进行四舍五入的方法
Nov 19 PHP
php面象对象数据库操作类实例
Dec 02 PHP
PHP将进程作为守护进程的方法
Mar 19 PHP
PHP中常用的魔术方法
Apr 28 PHP
php简单构造json多维数组的方法示例
Jun 08 PHP
CI框架封装的常用图像处理方法(缩略图,水印,旋转,上传等)
Nov 22 #PHP
php each 返回数组中当前的键值对并将数组指针向前移动一步实例
Nov 22 #PHP
CI框架中类的自动加载问题分析
Nov 21 #PHP
CI框架常用函数封装实例
Nov 21 #PHP
CI框架数据库查询缓存优化的方法
Nov 21 #PHP
CI框架AR数据库操作常用函数总结
Nov 21 #PHP
CI框架常用经典操作类总结(路由,伪静态,分页,session,验证码等)
Nov 21 #PHP
You might like
用php获取本周,上周,本月,上月,本季度日期的代码
2009/08/05 PHP
PHP操作XML作为数据库的类
2010/12/19 PHP
php实现根据url自动生成缩略图的方法
2014/09/23 PHP
php数组分页实现方法
2016/04/30 PHP
PHP进阶学习之Geo的地图定位算法详解
2019/06/19 PHP
jscript之List Excel Color Values
2007/06/13 Javascript
学习ExtJS table布局
2009/10/08 Javascript
javascript表格的渲染组件
2015/07/03 Javascript
解析jQueryEasyUI的使用
2016/11/22 Javascript
简单理解js的prototype属性及使用
2016/12/07 Javascript
layer.msg()去掉默认时间,实现手动关闭的方法
2019/09/12 Javascript
vue-cli+webpack项目打包到服务器后,ttf字体找不到的解决操作
2020/08/28 Javascript
vue 导航守卫和axios拦截器有哪些区别
2020/12/19 Vue.js
[03:22]DAC最前线(第二期)—DOTA2亚洲邀请赛主赛场周边及线路探访
2015/01/24 DOTA
python获取图片颜色信息的方法
2015/03/18 Python
Python使用Srapy框架爬虫模拟登陆并抓取知乎内容
2016/07/02 Python
python发送邮件实例分享
2017/07/28 Python
对python中执行DOS命令的3种方法总结
2018/05/12 Python
Django实现全文检索的方法(支持中文)
2018/05/14 Python
python按照多个条件排序的方法
2019/02/08 Python
Python操作redis实例小结【String、Hash、List、Set等】
2019/05/16 Python
python实现输入的数据在地图上生成热力图效果
2019/12/06 Python
selenium WebDriverWait类等待机制的实现
2020/03/18 Python
使用Python3 poplib模块删除服务器多天前的邮件实现代码
2020/04/24 Python
在keras里面实现计算f1-score的代码
2020/06/15 Python
Python如何输出百分比
2020/07/31 Python
Python实现Appium端口检测与释放的实现
2020/12/31 Python
迪卡侬荷兰官网:Decathlon荷兰
2017/10/29 全球购物
Seavenger官网:潜水服、浮潜、靴子和袜子
2020/03/05 全球购物
如何查找和删除数据库中的重复数据
2014/11/05 面试题
请说出以下代码输出什么
2013/08/30 面试题
优乐美广告词
2014/03/14 职场文书
幼儿园儿童节活动主持词+串词大全
2014/03/21 职场文书
2015年公路路政个人工作总结
2015/07/24 职场文书
JavaScript高级程序设计之基本引用类型
2021/11/17 Javascript
如何设置多台电脑共享打印机?多台电脑共享打印机的方法
2022/04/08 数码科技