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的计数器程序
Oct 09 PHP
PHP 开发环境配置(测试开发环境)
Apr 28 PHP
php 截取字符串并以零补齐str_pad() 函数
May 07 PHP
php递归获取目录内文件(包含子目录)封装类分享
Dec 25 PHP
php去除字符串中空字符的常用方法小结
Mar 17 PHP
PHP实现过滤掉非汉字字符只保留中文字符
Jun 04 PHP
详解PHP对象的串行化与反串行化
Jan 24 PHP
汇总PHPmailer群发Gmail的常见问题
Feb 24 PHP
浅谈PHP值mysql操作类
Jun 29 PHP
PHP实现路由映射到指定控制器
Aug 13 PHP
浅谈mysql_query()函数的返回值问题
Sep 05 PHP
Laravel框架实现的上传图片到七牛功能详解
Sep 06 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 5昨天隆重推出--PHP 5/Zend Engine 2.0新特性
2006/10/09 PHP
PHP Mysql编程之高级技巧
2008/08/27 PHP
codeigniter数据库操作函数汇总
2014/06/12 PHP
ThinkPHP实现多数据库连接的解决方法
2014/07/01 PHP
PHP CURL 内存泄露问题解决方法
2015/02/12 PHP
两种php给图片加水印的实现代码
2020/04/18 PHP
php验证码生成代码
2015/11/11 PHP
PHP入门教程之会话控制技巧(cookie与session)
2016/09/11 PHP
Yii框架中用response保存cookie,用request读取cookie的原理解析
2019/09/04 PHP
PHPstorm激活码2020年5月13日亲测有效
2020/09/17 PHP
js中的eventType事件及其浏览器支持性介绍
2013/11/29 Javascript
2种jQuery 实现刮刮卡效果
2015/02/01 Javascript
Bootstrap安装环境配置教程分享
2016/05/27 Javascript
BootStrap Tooltip插件源码解析
2016/12/27 Javascript
JavaScript截屏功能的实现代码
2017/07/28 Javascript
jQuery实现可兼容IE6的滚动监听功能
2017/09/20 jQuery
深入理解Promise.all
2018/08/08 Javascript
jQuery的ztree仿windows文件新建和拖拽功能的实现代码
2018/12/05 jQuery
Python学习笔记之常用函数及说明
2014/05/23 Python
Python编程中运用闭包时所需要注意的一些地方
2015/05/02 Python
Python多线程爬虫简单示例
2016/03/04 Python
Python基于tkinter模块实现的改名小工具示例
2017/07/27 Python
浅谈python数据类型及类型转换
2017/12/18 Python
python实现SOM算法
2018/02/23 Python
Selenium定时刷新网页的实现代码
2018/10/31 Python
python批量下载网站马拉松照片的完整步骤
2018/12/05 Python
PyTorch预训练的实现
2019/09/18 Python
Python3 Tkinkter + SQLite实现登录和注册界面
2019/11/19 Python
详解基于python的全局与局部序列比对的实现(DNA)
2020/10/07 Python
HTML5 Video标签的属性、方法和事件汇总介绍
2015/04/24 HTML / CSS
毕业生简单求职信
2013/11/19 职场文书
教育学专业实习生的自我鉴定
2013/11/26 职场文书
八年级语文教学反思
2014/02/11 职场文书
民主生活会对照检查材料范文
2014/10/01 职场文书
2014年社区妇联工作总结
2014/12/02 职场文书
贫困生助学金感谢信
2015/01/21 职场文书