利用浏览器的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 调试环境(IIS+PHP+MYSQL)
Jan 10 PHP
PHP通用分页类page.php[仿google分页]
Aug 31 PHP
php开发留言板的CRUD(增,删,改,查)操作
Apr 19 PHP
php 生成唯一id的几种解决方法
Mar 08 PHP
PHP设计模式之调解者模式的深入解析
Jun 13 PHP
php无限遍历目录示例
Feb 21 PHP
php实现递归与无限分类的方法
Feb 16 PHP
php数组冒泡排序算法实例
May 06 PHP
PHP中call_user_func_array回调函数的用法示例
Nov 26 PHP
thinkPHP5.0框架安装教程
Mar 25 PHP
thinkPHP框架动态配置用法实例分析
Jun 14 PHP
基于PHP+mysql实现新闻发布系统的开发
Aug 06 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木马攻击防御之道
2008/03/24 PHP
php使用curl发送json格式数据实例
2013/12/17 PHP
php递归调用删除数组空值元素的方法
2015/04/28 PHP
PHP快速生成各种信息提示框的方法
2016/02/03 PHP
Jquery AJAX 框架的使用方法
2009/11/03 Javascript
JavaScript定义类的几种方式总结
2014/01/06 Javascript
javascript遍历控件实例详细解析
2014/01/10 Javascript
用json方式实现在 js 中建立一个map
2014/05/02 Javascript
JavaScript中的style.cssText使用教程
2014/11/06 Javascript
跟我学习javascript的this关键字
2020/05/28 Javascript
读Javascript高性能编程重点笔记
2016/12/21 Javascript
ES6中Iterator与for..of..遍历用法分析
2017/03/31 Javascript
关于前后端json数据的发送与接收详解
2017/07/30 Javascript
在Angular中使用JWT认证方法示例
2018/09/10 Javascript
记录vue项目中遇到的一点小问题
2019/05/14 Javascript
Element-Ui组件 NavMenu 导航菜单的具体使用
2019/10/24 Javascript
Vue+elementUI实现多图片上传与回显功能(含回显后继续上传或删除)
2020/03/23 Javascript
解决antd 表单设置默认值initialValue后验证失效的问题
2020/11/02 Javascript
js动态生成表格(节点操作)
2021/01/12 Javascript
python3编写C/S网络程序实例教程
2014/08/25 Python
在Python中处理XML的教程
2015/04/29 Python
Python数据分析之真实IP请求Pandas详解
2016/11/18 Python
python对html过滤处理的方法
2018/10/21 Python
Django后台admin的使用详解
2019/07/08 Python
Win10环境python3.7安装dlib模块趟过的坑
2019/08/01 Python
python 回溯法模板详解
2020/02/26 Python
香港唯港荟酒店预订:Hotel ICON
2018/03/27 全球购物
生产厂长岗位职责
2014/02/21 职场文书
装修协议书范本
2014/04/21 职场文书
建筑节能汇报材料
2014/08/22 职场文书
领导干部查摆“四风”问题自我剖析材料思想汇报
2014/10/05 职场文书
付款委托书范本
2014/10/05 职场文书
共青团优秀团员申请书(范文)
2019/08/15 职场文书
AI:如何训练机器学习的模型
2021/04/16 Python
CSS实现切角+边框+投影+内容背景色渐变效果
2021/11/01 HTML / CSS
JS前端可视化canvas动画原理及其推导实现
2022/08/05 Javascript