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 pathinfo()获得文件的路径、名称等信息说明
Sep 13 PHP
PHP eval函数使用介绍
Dec 08 PHP
php ci框架中加载css和js文件失败的解决方法
Mar 03 PHP
PHP+Memcache实现wordpress访问总数统计(非插件)
Jul 04 PHP
ThinkPHP单字母函数(快捷方法)使用总结
Jul 23 PHP
Zend Framework教程之路由功能Zend_Controller_Router详解
Mar 07 PHP
PHP针对伪静态的注入总结【附asp与Python相关代码】
Aug 01 PHP
Yii2框架实现登录、退出及自动登录功能的方法详解
Oct 24 PHP
LaravelS通过Swoole加速Laravel/Lumen详解
Mar 02 PHP
PHP函数按引用传递参数及函数可选参数用法示例
Jun 04 PHP
PHP中ltrim()函数的用法与实例讲解
Mar 28 PHP
Laravel 创建可以传递参数 Console服务的例子
Oct 14 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的FTP学习(一)
2006/10/09 PHP
Ajax+PHP 边学边练 之二 实例
2009/11/24 PHP
简单实用的.net DataTable导出Execl
2013/10/28 PHP
ThinkPHP页面跳转success与error方法概述
2014/06/25 PHP
PHP+MySQL实现消息队列的方法分析
2018/05/09 PHP
javascript编程起步(第三课)
2007/02/27 Javascript
Notify - 基于jquery的消息通知插件
2011/10/18 Javascript
Javascript创建自定义对象 创建Object实例添加属性和方法
2012/06/04 Javascript
javascript游戏开发之《三国志曹操传》零部件开发(五)可移动地图的实现
2013/01/23 Javascript
用Javascript来生成ftp脚本的小例子
2013/07/03 Javascript
js 得到文件后缀(通过正则实现)
2013/07/08 Javascript
抛弃Nginx使用nodejs做反向代理服务器
2014/07/17 NodeJs
2014最热门的JavaScript代码高亮插件推荐
2014/11/25 Javascript
javascript实现无缝上下滚动特效
2015/12/16 Javascript
javascript之Boolean类型对象
2016/06/07 Javascript
点击按钮出现60秒倒计时的简单js代码(推荐)
2016/06/07 Javascript
微信小程序 实现点击添加移除class
2017/06/12 Javascript
基于vue实现分页效果
2017/11/06 Javascript
Angular 作用域scope的具体使用
2017/12/11 Javascript
Vue框架之goods组件开发详解
2018/01/25 Javascript
es6数据变更同步到视图层的方法
2019/03/04 Javascript
layui点击左侧导航栏,实现不刷新整个页面,只刷新局部的方法
2019/09/25 Javascript
通过GASP让vue实现动态效果实例代码详解
2019/11/24 Javascript
Vuex模块化应用实践示例
2020/02/03 Javascript
Python的类实例属性访问规则探讨
2015/01/30 Python
python中的文件打开与关闭操作命令介绍
2018/04/26 Python
python实现最长公共子序列
2018/05/22 Python
Anaconda2 5.2.0安装使用图文教程
2018/09/19 Python
python实现从文件中读取数据并绘制成 x y 轴图形的方法
2018/10/14 Python
python可以用哪些数据库
2020/06/22 Python
python爬虫利用selenium实现自动翻页爬取某鱼数据的思路详解
2020/12/22 Python
html5手机键盘弹出收起的处理
2020/01/20 HTML / CSS
台湾最大银发乐活百货:乐龄网
2018/05/21 全球购物
贷款担保书范文
2014/05/13 职场文书
师范毕业生求职信
2014/07/11 职场文书
市场营销计划书
2019/04/24 职场文书