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 相关文章推荐
php str_replace的替换漏洞
Mar 15 PHP
php面向对象全攻略 (四)构造方法与析构方法
Sep 30 PHP
PHP下对数组进行排序的函数
Aug 08 PHP
PHP中获取内网用户MAC地址(WINDOWS/linux)的实现代码
Aug 11 PHP
PHP测试程序运行时间的类
Feb 05 PHP
使用php 获取时间今天明天昨天时间戳的详解
Jun 20 PHP
php class类的用法详细总结
Oct 17 PHP
php统计时间和内存使用情况示例分享
Mar 13 PHP
php异步多线程swoole用法实例
Nov 14 PHP
浅析php原型模式
Nov 25 PHP
phpstorm 正则匹配删除空行、注释行(替换注释行为空行)
Jan 21 PHP
thinkPHP+mysql+ajax实现的仿百度一下即时搜索效果详解
Jul 15 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
windows xp下安装pear
2006/12/02 PHP
PHP setcookie指定domain参数后,在IE下设置cookie失效的解决方法
2011/09/09 PHP
PHP加Nginx实现动态裁剪图片方案
2014/03/10 PHP
php实现获取及设置用户访问页面语言类
2014/09/24 PHP
srcElement表格样式
2006/09/03 Javascript
jquery事件机制扩展插件 jquery鼠标右键事件
2011/12/21 Javascript
javascript 判断中文字符长度的函数代码
2012/08/27 Javascript
JS window对象的top、parent、opener含义介绍
2013/12/03 Javascript
jQuery取得select选择的文本与值的示例
2013/12/09 Javascript
JavaScript更改原始对象valueOf的方法
2015/03/19 Javascript
innerHTML中标签可以换行的方法汇总
2015/08/14 Javascript
Java Mybatis框架入门基础教程
2015/09/21 Javascript
js获取鼠标位置实例详解
2015/12/09 Javascript
JS获取时间的相关函数及时间戳与时间日期之间的转换
2016/02/04 Javascript
微信小程序 使用canvas制作K线实例详解
2017/01/12 Javascript
JS实现简单的星期格式转换功能示例
2018/07/23 Javascript
详解angular2如何手动点击特定元素上的点击事件
2018/10/16 Javascript
Vue源码解析之Template转化为AST的实现方法
2018/12/14 Javascript
JS实现的类似微信聊天效果示例
2019/01/29 Javascript
Vue实现简单的跑马灯
2020/05/25 Javascript
vue 解决setTimeOut和setInterval函数无效报错的问题
2020/07/30 Javascript
python爬取足球直播吧五大联赛积分榜
2018/06/13 Python
Python字符串的常见操作实例小结
2019/04/08 Python
详解Pandas之容易让人混淆的行选择和列选择
2019/07/10 Python
在pycharm中显示python画的图方法
2019/08/31 Python
Tensorflow 实现释放内存
2020/02/03 Python
基于python 凸包问题的解决
2020/04/16 Python
Python 解析简单的XML数据
2020/07/24 Python
python开发入门——set的使用
2020/09/03 Python
波比布朗英国官网:Bobbi Brown英国
2017/11/13 全球购物
Bibloo罗马尼亚网站:女装、男装、童装及鞋子和配饰
2019/07/20 全球购物
土建资料员岗位职责
2014/01/04 职场文书
创业培训计划书
2014/05/03 职场文书
演讲稿祖国在我心中
2014/05/04 职场文书
祖国在我心中演讲稿200字
2014/08/28 职场文书
2014年网管工作总结
2014/12/11 职场文书