利用浏览器的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 截取字符串函数整理(支持gb2312和utf-8)
Feb 16 PHP
php提交表单时判断 if($_POST[submit])与 if(isset($_POST[submit])) 的区别
Feb 08 PHP
PHP源码之explode使用说明
Aug 05 PHP
PHP CURL模拟登录新浪微博抓取页面内容 基于EaglePHP框架开发
Jan 16 PHP
php中使用preg_match_all匹配文章中的图片
Feb 06 PHP
使用PHP生成二维码的两种方法(带logo图像)
Mar 14 PHP
php使用CURL不依赖COOKIEJAR获取COOKIE的方法
Jun 17 PHP
php实现分页显示
Nov 03 PHP
php单例模式的简单实现方法
Jun 10 PHP
php实现文件预览功能
May 23 PHP
Laravel框架实现超简单的分页效果示例
Feb 08 PHP
PHP微商城开源代码实例
Mar 27 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 has encountered an Access Violation
2007/01/15 PHP
解析strtr函数的效率问题
2013/06/26 PHP
php 字符串压缩方法比较示例
2014/01/23 PHP
Laravel解决nesting level错误和隐藏index.php的问题
2019/10/12 PHP
PHP的imageTtfText()函数深入详解
2021/03/03 PHP
记录几个javascript有关的小细节
2007/04/02 Javascript
基于jQuery的消息提示插件之旅 DivAlert(三)
2010/04/01 Javascript
jQuery图片滚动图片的效果(另类实现)
2013/06/02 Javascript
使用jquery prev()方法找到同级的前一个元素
2014/07/11 Javascript
JavaScript中的方法调用详细介绍
2014/12/30 Javascript
jQuery实现返回顶部效果的方法
2015/05/29 Javascript
深入解析JavaScript编程中的this关键字使用
2015/11/09 Javascript
JS实现数字格式千分位相互转换方法
2016/08/01 Javascript
js实现鼠标左右移动,图片也跟着移动效果
2017/01/25 Javascript
基于node打包可执行文件工具_Pkg使用心得分享
2018/01/24 Javascript
webpack之引入图片的实现及问题
2018/10/08 Javascript
JS中使用new Option()实现时间联动效果
2018/12/10 Javascript
layui实现数据表格table分页功能(ajax异步)
2019/07/27 Javascript
javascript用defineProperty实现简单的双向绑定方法
2020/04/03 Javascript
[40:13]Ti4 冒泡赛第二天 iG vs NEWBEE 2
2014/07/15 DOTA
python使用点操作符访问字典(dict)数据的方法
2015/03/16 Python
对于Python中线程问题的简单讲解
2015/04/03 Python
Python聚类算法之凝聚层次聚类实例分析
2015/11/20 Python
浅谈python迭代器
2017/11/08 Python
查找python项目依赖并生成requirements.txt的方法
2018/07/10 Python
Python 3.8 新功能来一波(大部分人都不知道)
2020/03/11 Python
对python中各个response的使用说明
2020/03/28 Python
pycharm专业版远程登录服务器的详细教程
2020/09/15 Python
详解HTML5中的picture元素响应式处理图片
2018/01/03 HTML / CSS
Interflora澳大利亚:同日鲜花速递
2019/06/25 全球购物
编写一个 C 函数,该函数在一个字符串中找到可能的最长的子字符串,且该字符串是由同一字符组成的
2015/07/23 面试题
计算机专业自荐信
2014/05/24 职场文书
正风肃纪剖析材料
2014/09/30 职场文书
安全生产警示教育活动总结
2015/05/09 职场文书
会议新闻稿
2015/07/17 职场文书
Python实现文字pdf转换图片pdf效果
2022/04/03 Python