之前通过error_log()来调试php,

发现收到的json字符前边总是有一个1,一直以为是哪里直接出现了print、print_r、echo、var_dump(),

后来发现原来是某处用了形如error_log(print_r($str))的代码,这样会直接打印$str的值,顾收到的json前总是有一个1,

正确做法应该是error_log(print_r($str,true))

 

注意:

//这种情况,浏览器会显示Array ( [0] => c [1] => d ),而php错误日志会显示1
$arr = array("c","d");
error_log(print_r($arr));


//这种情况,浏览器无任何显示,而php错误日志会显示
//Array 
//( 
//  [0] => c 
//  [1] => d 
//)
$arr = array("c","d");
error_log(print_r($arr,true));

  

即print_r()中的第二个参数为true是,表示把字符返回而不是打印在屏幕上

相关文章:

  • 2021-08-24
  • 2022-01-02
  • 2022-12-23
  • 2022-12-23
  • 2021-11-03
  • 2022-12-23
  • 2022-01-19
猜你喜欢
  • 2022-02-24
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-09-20
相关资源
相似解决方案