php varexport,PHP函数补完:var_export()
var_export() 函数返回关于传递给该函数的变量的结构信息,它和 var_dump() 类似,不同的是其返回的表示是合法的 PHP 代码。var_export必须返回合法的php代码, 也就是说,var_export返回的代码,可以直接当作php代码赋值个一个变量。 而这个变量就会取得和被var_export一样的类型的值。看下面一个简单的例子:
$arr = array ( 1 , 2 , array ( "apple" , "banana" , "orange" ));
var_export ( $arr );
?>
程序输出:
array (
0 => 1,
1 => 2,
2 =>
array (
0 => 'apple',
1 => 'banana',
2 => 'orange',
),
)
注意,上面的输出是合法的PHP代码。假如用var_dump(),则输出为:
array(3) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
array(3) {
[0]=>
string(5) "apple"
[1]=>
string(6) "banana"
[2]=>
string(6) "orange"
}
}
可以通过将函数的第二个参数设置为 TRUE,从而返回变量的表示。
$v = 'nowamagic';
$rs = var_export ( $v, TRUE );
echo $rs;
?>
程序运行结果:
'nowamagic'
注意两点:
var_export()会一直保留着结构化形式存储数据.
但是特别请记住:此时的变量值的类型已是字符串了($var),不能再以数组的方式取出里面的值来。
在PHPCMS的源码里,可以看到很多配置的参数都用数组记录的,包括它们的频道、内容等等。
function cache_write($file, $string, $type = 'array')
{
if(is_array($string))
{
$type = strtolower($type);
if($type == 'array')
{
$string = "<?php \n return ".var_export($string,TRUE).";\n?>";
}
elseif($type == 'constant')
{
$data='';
foreach($string as $key => $value) $data .= "define('".strtoupper($key)."','".
addslashes($value)."');\n";
$string = "<?php \n".$data."\n?>";
}
}
$strlen = file_put_contents(PHPCMS_CACHEDIR.$file, $string);
chmod(PHPCMS_CACHEDIR.$file, 0777);
return $strlen;
}
延伸阅读
此文章所在专题列表如下:
php varexport,PHP函数补完:var_export()相关推荐
- JavaScript函数补完:toString()
javascript中的toString()方法,主要用于Array.Boolean.Date.Error.Function.Number等对象.下面是这些方法的一些解析和简单应用,做个纪律,以作备忘 ...
- JavaScript函数补完:sort()排序
JavaScript实现多维数组.对象数组排序,其实用的就是原生的sort()方法,用于对数组的元素进行排序. sort() 方法用于对数组的元素进行排序.语法如下: 1 arrayObject.so ...
- php name .id,PHP函数补完:session_name()
session_start()是session机制的开始,它有一定概率开启垃圾回收,因为session是存放在文件中,PHP自身的垃圾回收是无效的,SESSION的回收是要删文件的,这个概率是根据ph ...
- 判断是否是数字类型php_PHP函数补完:判断变量是否为数字is_numeric()
is_numeric - 检测变量是否为数字或数字字符串. 基本使用如下: $tests = array( "42", 1337, "1e4", "n ...
- php url 合法字符串_PHP函数补完:http_build_query()构造URL字符串
简单来说,http_build_query()就是将一个数组转换成url 问号?后面的参数字符串,并且会自动进行urlencode处理. 还是引用一下官方的解释: http_build_query h ...
- 【机器学习】补完计划
机器学习补完计划 发现之前的帖子太长了,拆了整理一下,理一理以前的笔记,其实代码实现和数学推导更加有助于理解 PS:任天堂特邀嘉宾来举例子 波克基斯.玛狃拉,比卡超 四个主要任务 分类(classif ...
- matlab估计arma残差,写给你的金融时间序列分析:补完篇
摘要 本文介绍时间序列分析中的 GARCH 模型,阐述使用 mean model 和 volatility model 对收益率序列联合建模的方法. 1 引言 之前,我们推出了<写给你的时间序列 ...
- 停车场计费算法 php,停车场收费算法,思路卡住了求补完!该如何处理
停车场收费算法,思路卡住了求补完!! 本帖最后由 bulls5988 于 2013-11-22 16:00:03 编辑 一个停车场算法,写了一半不会写了. 需求:员工停车卡.周一到周五,7:00~23 ...
- [TaskList] 省选前板子补完计划
省选前本子补完计划 [ ] 带权并查集 [ ] 树上莫队 - UOJ58 [WC2013]糖果公园 loj2485「CEOI2017」Chase 转载于:https://www.cnblogs.com ...
最新文章
- Oracle Exadata 一体机关机过程(虚拟机环境)
- FTP服务器serv-u
- Sql2000命名中的’_’好象会引发问题
- CPU是怎样制造的?解析intel Core i7生产全过程
- Windows驱动开发学习笔记(五)—— SSDT HOOK
- Geospark加载PostgreSQL数据库
- Windows 10 版本 21H2 正式发布
- Android硬件访问服务框架思想初识
- java 日期 相差的天数_JAVA计算两个日期之间相差的天数
- 自己动手,开发项目辅助工具
- Adobe Acrobat的安装时出现:服务print spooler启动失败,请确认您有足够权限启动系统服务。解决方法...
- Error:Expected linebreaks to be ‘LF‘ but found ‘CRLF‘ linebreak-style
- Java I/O系统之处理流类型
- fckeditor代码总结
- macOS Mojave下解决wine中文乱码问题
- 海康录像机能用别的摄像头吗_海康威视录像机如何添加大华摄像头
- CNN手写汉字识别参数调整
- Android实现微信查看附近的人
- 【第一组】第十六次冲刺例会纪要
- scala学习之旅(十三):隐式转换和隐式参数
热门文章
- easyUI.checkForm
- linux加protobuf变量环境,protobuf简单介绍和ubuntu 16.04环境下安装教程
- oracle 系统检查点,检查点(Checkpoint)优化及故障排除指南
- RTT的IPC机制篇——信号
- RTT内核对象——对象理解
- C语言课后习题(43)
- 怪物猎人ol服务器维护,《怪物猎人OL》5月11日1:30全区全服维护内容公告
- 精彩回顾丨2021数据库大咖讲坛(第7期)视频PPT互动问答
- Oracle 创建磁盘组报错ORA-15137的问题分析与解决思路
- 送书丨《架构解密:从分布式到微服务》