利用浏览器的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中看实例学正则表达式
Dec 25 PHP
PHP+FLASH实现上传文件进度条相关文件 下载
Jul 21 PHP
php一个找二层目录的小东东
Aug 02 PHP
PHP中几种常见的超时处理全面总结
Sep 11 PHP
PHP操作Memcache实例介绍
Jun 14 PHP
解析php多线程下载远程多个文件
Jun 25 PHP
PHP提交表单失败后如何保留已经填写的信息
Jun 20 PHP
跟我学Laravel之快速入门
Oct 15 PHP
php实现等比例不失真缩放上传图片的方法
Nov 14 PHP
浅谈PHP的反射机制
Dec 15 PHP
php实现微信原生支付(扫码支付)功能
May 30 PHP
Yii2框架实现利用mpdf创建pdf文件功能示例
Feb 08 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(4) php 函数 补充2
2010/02/15 PHP
js之WEB开发调试利器:Firebug 下载
2007/01/13 Javascript
JavaScript更改class和id的方法
2008/10/10 Javascript
picChange 图片切换特效的函数代码
2010/05/06 Javascript
JqGrid web打印实现代码
2011/05/31 Javascript
DWZ刷新dialog解决方法
2013/03/03 Javascript
JS判定是否原生方法
2013/07/22 Javascript
jquery中邮箱地址 URL网站地址正则验证实例代码
2013/09/15 Javascript
javascript 获取元素样式必杀技
2014/05/04 Javascript
JavaScript字符串对象split方法入门实例(用于把字符串分割成数组)
2014/10/16 Javascript
Javscript调用iframe框架页面中函数的方法
2014/11/01 Javascript
jQuery实现企业网站横幅焦点图切换功能实例
2015/04/30 Javascript
JS日期加减,日期运算代码
2015/11/05 Javascript
JS实现动态生成表格并提交表格数据向后端
2020/11/25 Javascript
Yarn的安装与使用详细介绍
2016/10/25 Javascript
详解vue-admin和后端(flask)分离结合的例子
2018/02/12 Javascript
详解TypeScript+Vue 插件 vue-class-component的使用总结
2019/02/18 Javascript
微信小程序封装的HTTP请求示例【附升级版】
2019/05/11 Javascript
JavaScript页面倒计时功能完整示例
2019/05/15 Javascript
详解VUE调用本地json的使用方法
2019/05/15 Javascript
vue实现在线预览pdf文件和下载(pdf.js)
2019/11/26 Javascript
JavaScript经典案例之简易计算器
2020/08/24 Javascript
python实现BackPropagation算法
2017/12/14 Python
Pycharm 设置自定义背景颜色的图文教程
2018/05/23 Python
Python爬虫:Request Payload和Form Data的简单区别说明
2020/04/30 Python
如何基于python实现不邻接植花
2020/05/01 Python
Keras load_model 导入错误的解决方式
2020/06/09 Python
经理职责范文
2013/11/08 职场文书
高职教师岗位职责
2013/12/24 职场文书
给校长的建议书300字
2014/05/16 职场文书
关于读书的活动方案
2014/08/14 职场文书
收入及婚姻状况证明
2014/11/20 职场文书
软件项目经理岗位职责
2015/04/01 职场文书
2015年英语教研组工作总结
2015/05/23 职场文书
如何理解及使用Python闭包
2021/06/01 Python
Redis实现分布式锁的五种方法详解
2022/06/14 Redis