PHPLog php 程序调试追踪工具


Posted in PHP onSeptember 09, 2009

原理:

    1.程序执行的过程中,在相应的地方记录你想要追踪的变量及调用栈和每次函数调用的参数,
          把这些信息以一定的格式记录到文件,一个变量一行,具体数据格式请参看代码,这里不细讲.

    2.现在有了每次记录变量时的所有信息(包括调用栈及参数),当你通过浏览器访问这个程序时, 这个程序会把整个文件读取分析,
          在页面显示你的所有调试信息,并且它会动态ajax刷新,保持与你的调试同步.

    画个图吧,要清晰得多.

PHPLog php 程序调试追踪工具

     BackTrace也就是调用栈信息,没有在图中体现,是ajax动态刷新的.

功用:

      再截几个本机的图说明下:

     1.包含文件,调试变量(上面是程序,下面是apache_request_headers()的调试输出)

PHPLog php 程序调试追踪工具

     2.drupal系统某次函数的调用栈列表
 

PHPLog php 程序调试追踪工具

     3.栈中某个函数的调用参数

PHPLog php 程序调试追踪工具

后记:

   程序基本上实现了调试,追踪php变量的功能,还附带了调用栈及调用参数查看功能.

   现在echo,print_r,var_dump等系统函数,如非必要时,本人已很少用来调试输出了,基本上用这个就可以得到想要的东西了.

   特别是像drupal这类复杂的系统,能够清楚地知道程序是怎么执行的.

说明:

    程序是用php4的写法写成的,在php4.4.8, 5.2.5上测试过, 理论上是支持php4, php5的.

    linux, window, ie6-7, firefox下也都测试过,但还是不敢保证在你的环境下不出错,如有,请自行修正.

    请不让log文件超过5M大小,浏览器可能会崩溃的.
下载地址 https://3water.com/codes/20851.html

PHP 相关文章推荐
COM in PHP (winows only)
Oct 09 PHP
php垃圾代码优化操作代码
Aug 05 PHP
基于php 随机数的深入理解
Jun 05 PHP
PHP实现把文本中的URL转换为链接的auolink()函数分享
Jul 29 PHP
PHP调用Linux命令权限不足问题解决方法
Feb 07 PHP
PHP获取POST数据的几种方法汇总
Mar 03 PHP
php实现搜索一维数组元素并删除二维数组对应元素的方法
Jul 06 PHP
PHP数据库操作Helper类完整实例
May 11 PHP
PHP 接入微信扫码支付总结(总结篇)
Nov 03 PHP
基于thinkPHP类的插入数据库操作功能示例
Jan 06 PHP
PHP 应用容器化以及部署方法
Feb 12 PHP
PHP 获取客户端 IP 地址的方法实例代码
Nov 11 PHP
php 从数据库提取二进制图片的处理代码
Sep 09 #PHP
封装一个PDO数据库操作类代码
Sep 09 #PHP
PHP 数组遍历顺序理解
Sep 09 #PHP
PHP 裁剪图片成固定大小代码方法
Sep 09 #PHP
PHP 获取MSN好友列表的代码(2009-05-14测试通过)
Sep 09 #PHP
PHP 危险函数全解析
Sep 09 #PHP
php 获取远程网页内容的函数
Sep 08 #PHP
You might like
PHP fastcgi模式上传大文件(大约有300多K)报错
2014/09/28 PHP
Smarty中调用FCKeditor的方法
2014/10/27 PHP
php生成图片验证码-附五种验证码
2015/08/19 PHP
php5.3后静态绑定用法详解
2016/11/11 PHP
yii2.0整合阿里云oss的示例代码
2017/09/19 PHP
JQuery 初体验(建议学习jquery)
2009/04/25 Javascript
JQuery与iframe交互实现代码
2009/12/24 Javascript
jquery动态添加删除div 具体实现
2013/07/20 Javascript
js改变鼠标的形状和样式的方法
2014/03/31 Javascript
js onmousewheel事件多次触发问题解决方法
2014/10/17 Javascript
jQuery+jRange实现滑动选取数值范围特效
2015/03/14 Javascript
Javascript必知必会(四)js类型转换
2016/06/08 Javascript
基于BootStrap环境写jQuery tabs插件
2016/07/12 Javascript
JavaScript实现职责链模式概述
2018/01/25 Javascript
简单的vuex 的使用案例笔记
2018/04/13 Javascript
Vue利用Blob下载原生二进制数组文件
2019/09/25 Javascript
vue大型项目之分模块运行/打包的实现
2020/09/21 Javascript
[51:00]Secret vs VGJ.S 2018国际邀请赛淘汰赛BO3 第一场 8.24
2018/08/25 DOTA
python的常见命令注入威胁
2013/02/18 Python
python XlsxWriter模块创建aexcel表格的实例讲解
2018/05/03 Python
python爬取内容存入Excel实例
2019/02/20 Python
Python一键安装全部依赖包的方法
2019/08/12 Python
Python文件操作基础流程解析
2020/03/19 Python
Python yield生成器和return对比代码实例
2020/04/20 Python
python中os包的用法
2020/06/01 Python
opencv+pyQt5实现图片阈值编辑器/寻色块阈值利器
2020/11/13 Python
python 基于opencv实现高斯平滑
2020/12/18 Python
大学生演讲稿范文
2014/01/11 职场文书
商场消防管理制度
2014/01/12 职场文书
大学毕业生推荐信
2014/07/09 职场文书
学校组织向国旗敬礼活动方案(中小学适用)
2014/09/27 职场文书
2015年留守儿童工作总结
2015/05/22 职场文书
Java面试题冲刺第十五天--设计模式
2021/08/07 面试题
MySQL中order by的使用详情
2021/11/17 MySQL
HTML常用标签超详细整理
2022/03/19 HTML / CSS
六个好看实用的 HTML + CSS 后台登录入口页面
2022/04/28 HTML / CSS