利用浏览器的Javascript控制台调试PHP程序


Posted in PHP onJanuary 08, 2014

PHP是一种服务器端脚本语言,用来开发动态web应用程序。与JAVA相比,没有一个好的服务器端调试工具是其限制之一。通常我们都是在PHP代码中添加echo、var_dump等语句,将变量、数组的值显示在浏览器中来达到调试的目的。

现在,越来越多的浏览器都有了开发这工具或者Javascript控制台,通过这些工具,我们可以很方便的显示PHP代码中的变量或数组值。下面我们来做一个例子。例子中的PHP代码有四个跟踪级别:info, warn, log, error,开发人员可以使用浏览器控制台来显示错误变量,数组值。

将下面代码拷贝到PHP文件中,并保存为WebConsole.php

<?php 
class WebConsole { private static function write($data, $type = 'info') { 
$method_types = array('error', 'info', 'log', 'warn'); 
$msg_type = '';(PS:T不错的PHP Q扣?n:304224365,验证:csl) 
if(in_array($type, $method_types)) { 
$msg_type = sprintf("console.%s", $type); 
}else { 
$msg_type = sprintf("console.%s", 'info'); 
} 
if(is_array($data)) { 
echo("<script>$msg_type('".implode(', ', $data)."');</script>"); 
} else { 
echo("<script>$msg_type('".$data."');</script>"); 
} 
} 
public static function info($data) { 
self::write($data); 
} 
public static function error($data) { 
self::write($data, 'error'); 
} 
public static function log($data) { 
self::write($data, 'log'); 
} 
public static function warn($data) { 
self::write($data, 'warn'); 
} 
} 
?>

现在,导入WebConsole类,并使用跟踪功能。
<?php 
require_once('WebConsole.php'); 
$fruits = array('apple', 'mange', 'banana'); 
WebConsole::log($fruits); 
WebConsole::info($fruits); 
WebConsole::warn($fruits); 
WebConsole::error($fruits); 
?>

现在打开你的浏览器控制台,你会发现出现类似下面的屏幕截图:
利用浏览器的Javascript控制台调试PHP程序
PHP 相关文章推荐
php socket方式提交的post详解
Jul 19 PHP
php xml文件操作实现代码(二)
Mar 20 PHP
完美解决PHP中文乱码
Nov 26 PHP
PHP面向对象学习笔记之二 生成对象的设计模式
Oct 06 PHP
php时间戳格式化显示友好的时间函数分享
Oct 21 PHP
ThinkPHP写数组插入与获取最新插入数据ID实例
Nov 03 PHP
学习php开源项目的源码指南
Dec 21 PHP
详解WordPress中用于合成数组的wp_parse_args()函数
Dec 18 PHP
实例分析PHP中PHPMailer发邮件
Dec 13 PHP
php实现微信企业转账功能
Oct 02 PHP
Laravel的Auth验证Token验证使用自定义Redis的例子
Sep 30 PHP
PHP数组基本用法与知识点总结
Jun 02 PHP
php获取从百度搜索进入网站的关键词的详细代码
Jan 08 #PHP
PHP IE中下载附件问题解决方法
Jan 07 #PHP
迅速确定php多维数组的深度的方法
Jan 07 #PHP
ini_set的用法介绍
Jan 07 #PHP
PHP中HTML标签过滤技巧
Jan 07 #PHP
PHP中执行MYSQL事务解决数据写入不完整等情况
Jan 07 #PHP
PHP中实现生成静态文件的方法缓解服务器压力
Jan 07 #PHP
You might like
php获取网页标题和内容函数(不包含html标签)
2014/02/03 PHP
PHP实现抓取HTTPS内容
2014/12/01 PHP
WordPress用户登录框密码的隐藏与部分显示技巧
2015/12/31 PHP
PHP面向对象五大原则之依赖倒置原则(DIP)详解
2018/04/08 PHP
php 提交表单 关闭layer弹窗iframe的实例讲解
2018/08/20 PHP
thinkPHP框架RBAC实现原理分析
2019/02/01 PHP
用Javascript读取中文COOKIE的解决办法
2007/02/15 Javascript
新发现一个骗链接的方法(js读取cookies)
2012/01/11 Javascript
jQuery实现带有动画效果的回到顶部和底部代码
2015/11/04 Javascript
极易被忽视的javascript面试题七问七答
2016/02/15 Javascript
微信小程序 开发工具快捷键整理
2016/10/31 Javascript
webpack处理 css\less\sass 样式的方法
2017/08/21 Javascript
vue 动态修改a标签的样式的方法
2018/01/18 Javascript
jquery 键盘事件 keypress() keydown() keyup()用法总结
2019/10/23 jQuery
微信小程序实现可长按移动控件
2020/11/01 Javascript
微信小程序实现底部弹出框
2020/11/18 Javascript
python实现逆序输出一个数字的示例讲解
2018/06/25 Python
使用Python向C语言的链接库传递数组、结构体、指针类型的数据
2019/01/29 Python
python3使用matplotlib绘制散点图
2019/03/19 Python
python flask框架实现传数据到js的方法分析
2019/06/11 Python
在Python中os.fork()产生子进程的例子
2019/08/08 Python
用Python做一个久坐提醒小助手的示例代码
2020/02/10 Python
Python 2.6.6升级到Python2.7.15的详细步骤
2020/12/14 Python
CSS3实现红包抖动效果
2020/12/23 HTML / CSS
浅谈three.js中的needsUpdate的应用
2012/11/12 HTML / CSS
网络艺术零售业的先驱者:artrepublic
2017/09/26 全球购物
德国购买门票网站:ADticket.de
2019/10/31 全球购物
LINUX下线程,GDI类的解释
2012/04/17 面试题
数据管理员的自我评价分享
2013/11/15 职场文书
给女儿的表扬信
2014/01/18 职场文书
职工运动会邀请函
2014/01/19 职场文书
英语辞职信怎么写
2015/02/28 职场文书
党支部综合考察意见
2015/06/01 职场文书
2019年汽车租赁合同范本!
2019/08/12 职场文书
Python-typing: 类型标注与支持 Any类型详解
2021/05/10 Python
Golang使用Panic与Recover进行错误捕获
2022/03/22 Golang