收藏本页|设为主页|RSS
LOGO

我就上qq红包必须实名吗吧

PHP利用浏览器控制台(Console)进行Debug技术杂萃 苦逼码农的点点滴滴,请多多指教!我就上qq红包必须实名吗吧资源的世界,资源的海洋,收集各类资源,以无LOGO原汁原味为主!欢迎大家交流。智者乐山,仁者乐水,独qq红包必须实名吗,不如众qq红包必须实名吗,乐山,乐水,乐天,乐地...

您当前的位置:首页?技术杂萃
全站公告
重要提示!

本站收集各类美图,以无LOGO原汁原味图为主!欢迎大家交流。
怕失联,请认准如下地址:
微博:http://weibo.com/237h
微信:SuperBeautylove
轻博客:http://www593668com.lofter.com/
花瓣:http://huaban.com/sinsunson
Q群1:231151757
Q群2:583138281
网站:http://www.593668.com
文件解压密码:593668.com
热心赞助

站内搜索
?
相关文章
热门文章
热搜词组
文章归档
友情链接
    PHP利用浏览器控制台(Console)进行Debug

    发布日期:2019-09-30??关键词:PHP

    以往编写PHP程序在调试时,比较常用的方式是将变量的信息打印到浏览器中,例如如下这些函数:

    print_r($para);
    var_dump($para);
    echo $para;

    但是如果项目已经布署到生产环境,直接打印到页面肯定会对用户有较大影响,而且造成Ajax返回的数据错误等问题。这时可以采取手段就是将调试信息输出到文件的方式,如下是最简单的例子:
    error_log(print_r($para));

    但是如果记录日志本身已经很多的话,这样来调试终究还是不太方便的。幸亏谷歌浏览器提供了一个控制台,正常情况下按下Win快捷键 Ctrl+Shift+J)即可调出。将调试内容都输出到Console里,就可以解决这个问题了。

    当然我们只是需要一个简单的,可用的,不用安装扩展程序的方式来解决这个问题,那么可以这么来做:

    function my_shutdown(){
    ? echo Console_log::fetch_output();
    }
    class Console_log{
    ? private static $output = '';
    ? static function log($data){
    ? ? if(is_array($data) || is_object($data)){ $data = json_encode($data);}
    ? ? $zlib_oc = ini_get('zlib.output_compression'); // 取得zlib是否自动开启, 也就是php.ini 中的配置为on.
    ? ? if(empty($zlib_oc)) { // 假如读到是off, 就执行下一行.
    ? ? ? ob_start('ob_gzhandler');
    ? ? }else{
    ? ? ? ob_start();
    ? ? }
    ? ? if(self::$output === ''){echo "";}
    ? ? return self::$output;
    ? }
    }

    将如上代码保存好,让想要调试的页面包含进去即可。

    原理自然也很简单,就是在页面里加入了一段Javascript的脚本,利用console.log() 函数来输出信息到控制台,如果是数组对象就打印JSON字符串,将所有数据都统一到一处输出。如果不注册一个shutdown函数,那么就记得在程序最后加上一句echo Console_log::fetch_output();

    比如想记录下HTTP提交的参数,先加入如下行代码:
    Console_log::log($_REQUEST);

    具体的调试效果显示如下所示:

    PHP利用浏览器控制台(Console)进行Debug,PHP,技术杂萃

    大家有兴趣可以去试试看。
    猜您喜欢:
    Q群:231151757微信:superimagelove官网:www.593668.com