PHP调试输出的方法

     PHP程序一旦出错调试是个问题,一般常规方法当然是用echo()函数直接在页面上输出,来查看变量的内容。但是这样很麻烦有些地方未必能显示调试内容。所以有大神想出办法用Google Chrome浏览器“审查元素”或者“检查”下的Console也就是控制台来显示PHP等服务端语言的调试信息。下面的大神提供的函数会把参数中的变量输出到Console。


  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>");
	}
}

     可以直接在需要调试的地方使用,例如:

 

   $book_id=2;
  
   $sql = "select * from product where book_id < $book_id order by book_id desc limit 1";
   $result = execute_sql($link, "mobile_store", $sql);  //mobile_store是数据库名
   $row = mysqli_fetch_assoc($result); //从结果集中取得一行作为关联数组

   console_log($row);

 

     但是此函数的效果比较迷,有时候能显示有时候不能显示,顺带着还能让PHP程序不正常。最好的方法是用Chrome浏览器专门的后端程序调试插件,比如PHP-Console或者Chrome Logger前者针对PHP,后者支持多种服务端语言,使用方式都是先安装一个Chrome扩展,然后提供服务端的库供调用。实现方式大致是利用Session,Cookies等来传递数据。 


     鄙人只用了PHP-Console,效果很好。

     首先去谷歌浏览器应用商店安装PHP-Console。

     

     然后解压php-console-master压缩包,我会在文章末尾附上下载地址。
    

     解压文件后会得到php-console-master文件夹。

     然后在需要调试输出的PHP页面引入它的PHP文件,例如:

require_once("file://C:/wamp/www/PhpConsole/__autoload.php");


$handler = PhpConsole\Handler::getInstance();
$handler->start(); //初始化

$book_id=2;
  
$sql = "select * from product where book_id < $book_id order by book_id desc limit 1";
$result = execute_sql($link, "mobile_store", $sql);  //mobile_store是数据库名
$row = mysqli_fetch_assoc($result); //从结果集中取得一行作为关联数组

$handler->debug($row, '春哥纯爷们:'); //向Console输出信息,参数1:需要输出的变量;参数2:输出说明。

     PHP-Console还会在右边弹出一个小窗口显示调试信息,可谓逼格满满。

 

参考资料:https://blog.csdn.net/sky_zhe/article/details/21803555

支持库下载地址:https://download.csdn.net/download/l198738655/11711908

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值