php var_export与var_dump 输出的不同

yipeiwu_com5年前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读取目录树的实现方法分析

本文实例讲述了PHP读取目录树的实现方法。分享给大家供大家参考,具体如下: 前一阵时间面试XX公司笔试题中竟然有这样一道题: 使用PHP列出目录树! 当时一看就懵逼了!基本的思路还是有的...

php检查字符串中是否包含7位GSM字符的方法

本文实例讲述了php检查字符串中是否包含7位GSM字符的方法。分享给大家供大家参考。具体分析如下: 下面的代码检查一个字符串是否包含任何7位GSM字符。它对短信平台上工作的人非常有用。...

PHP获取一段文本显示点阵宽度和高度的方法

本文实例讲述了PHP获取一段文本显示点阵宽度和高度的方法。分享给大家供大家参考。具体如下: define("F_SIZE", 8); define("F_FONT", "arial....

php设计模式 Command(命令模式)

<?php /** * 命令模式 * * 将一个请求封装为一个对象从而使你可用不同的请求对客户进行参数化,对请求排除或记录请求日志,以及支持可取消的操作 */ interface...

从手册去理解分析PHP session机制

session.save_handler = files 1. session_start() session_start()是session机制的开始,它有一定概率开启垃圾回收,因为s...