当我们的PHP程序Debug时,比较常用的方式是将变量的信息打印到浏览器中,例如这样: (推荐学习:PHP视频教程)
<?php echo '<pre class="brush:php;toolbar:false">'; print_r($bar); echo ''; exit;
可是直接打印出来有可能会干扰你的页面,打乱布局,影响作为Api返回的数据等问题。这时我们可以采取将调试信息输出到文件的方式,如下是最简单的例子:
error_log(print_r($bar, true));
可是这种方式用来记录日志还合适,用到调试时终究还是不太方便。此时我们可以利用现代浏览器的控制台,比如Chrome Console(Win快捷键 Ctrl+Shift+J),将内容输出到Console里,就可以解决这个问题了。
现在已经有一些这样的工具了,比如说 PHP-Console 或者Chrome Logger ,前者针对PHP,后者支持多种服务端语言,使用方式都是先安装一个Chrome扩展,然后提供服务端的库供调用。实现方式大致是利用Session,Cookies等来传递数据。
如上是比较完善的解决方式,都提供了丰富的功能。但如果只是想要一个简单的,可用的,不用安装扩展程序的方式来解决这个问题,那么可以这么来做:
<?php function console_log($data) { if (is_array($data) || is_object($data)) { echo("<script>console.log('".json_encode($data)."');</script>"); } else { echo("<script>console.log('".$data."');</script>"); } }
其实质上就是在页面里加入了一段javascript的脚本,利用 console.log();函数输出信息到控制台,如上方法打印出来都是字符串形式,如果将单引号去掉,PHP的数组和对象将以JS对象的方式打印出来,即
echo("<script>console.log(".json_encode($data).");</script>");
以上是php怎么返回数据到控制台的详细内容。更多信息请关注PHP中文网其他相关文章!