php var_export与var_dump 输出的不同

yipeiwu_com6年前PHP代码库

问题发现
在跟踪yratings_get_targets的时候,
error_log(var_export(yblog_mspconfiginit("ratings"),true));老是打印出yblog_mspconfiginit(“ratings”)的返回是NULL

导致我以为是无法建立和DB的连接,走错路了一天。
最后才发现,这是var_export和var_dump的区别之一

这就是:
问题原因
var_export必须返回合法的php代码, 也就是说,var_export返回的代码,可以直接当作php代码赋值个一个变量。 而这个变量就会取得和被var_export一样的类型的值

但是, 当变量类型为resource的时候,是无法简单copy复制的,所以, 当var_export的变量是resource类型时, var_export会返回NULL

实例
$res = yblog_mspconfiginit("ratings");
var_dump($res);
var_export($res);结果:

resource(1) of type (yahoo_yblog)
NULL再比如:

$res = fopen('status.html', 'r');
var_dump($res);
var_export($res);结果:

resource(2) of type (stream)
NULL

相关文章

使用php自动备份数据库表的实现方法

使用php自动备份数据库表的实现方法

1、前言 mysql数据库的备份方式有很多; 例如: 1、使用mysqldump函数 mysqldump -u username -p dbname table1 table2 ......

php环境无法上传文件的解决方法

一、 检查网站目录的权限。 上传目录是否有写入权限。二、 php.ini配置文件 php.ini中影响上传的有以下几处: file_uploads 是否开启 on 必须开启 是否允许HT...

php获取ip及网址的简单方法(必看)

如下所示: echo 'http://'.$_SERVER['HTTP_HOST'];输出您访问网址的域名 echo $benji_ip=gethostbyname($_ENV['C...

PHP命名空间简单用法示例

本文实例讲述了PHP命名空间简单用法。分享给大家供大家参考,具体如下: 有三个文件,分别是space1.php,space2.php,use.php吧,在同一目录里。 space1.ph...

基于php编程规范(详解)

今天写这个是为了 提醒自己 编程过程 不仅要有逻辑 思想 还有要规范 代码 这样可读性 1、PHP 编程规范与编码习惯最主要的有以下几点:  1 文件说明  2 fu...