时间: 2020-10-12|tag:31次围观|0 条评论

php var_export 与 var_dump的分析区别

问题发现:在跟踪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.

PHP实例:

  1. $res = yblog_mspconfiginit("ratings"); 
  2. var_dump($res); 
  3. var_export($res); 
  4. //结果: 
  5. resource(1) of type (yahoo_yblog) 
  6. NULL 
  7. //再比如: 
  8. $res = fopen('status.html''r'); 
  9. var_dump($res); 
  10. var_export($res); 
  11. //结果: 
  12. resource(2) of type (stream) 
  13. NULL 

本站声明:网站内容来源于网络,如有侵权,请联系我们,我们将及时处理。

本博客所有文章如无特别注明均为原创。
复制或转载请以超链接形式注明转自起风了,原文地址《php var_export 与 var_dump的分析区别 – php函数
   

还没有人抢沙发呢~