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 相关文章推荐
如何开发一个虚拟域名系统
Oct 09 PHP
PHP 数据结构 算法 三元组 Triplet
Jul 02 PHP
PHP 数组和字符串互相转换实现方法
Mar 26 PHP
解析php5配置使用pdo
Jul 03 PHP
PHP中使用php5-ffmpeg撷取视频图片实例
Jan 07 PHP
php将数组转换成csv格式文件输出的方法
Mar 14 PHP
PHP 数组基本操作小结(推荐)
Jun 13 PHP
php微信高级接口调用方法(自定义菜单接口、客服接口、二维码)
Nov 28 PHP
Zend Framework校验器Zend_Validate用法详解
Dec 09 PHP
laravel自定义分页效果
Jul 23 PHP
IOS 开发之NSDictionary转换成JSON字符串
Aug 14 PHP
laravel5.4利用163邮箱发送邮件的步骤详解
Sep 22 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获得文件扩展名三法
2006/11/25 PHP
一步一步学习PHP(2)――PHP类型
2010/02/15 PHP
学习php分页代码实例
2013/10/24 PHP
PHP小程序支付功能完整版【基于thinkPHP】
2019/03/26 PHP
javascript 获取表单file全路径
2009/12/31 Javascript
juqery 学习之五 文档处理 插入
2011/02/11 Javascript
jQuery版Tab标签切换
2011/03/16 Javascript
Jquery中使用setInterval和setTimeout的方法
2013/04/08 Javascript
jquery操作HTML5 的data-*的用法实例分享
2014/08/17 Javascript
使用jQuery实现input数值增量和减量的方法
2015/01/24 Javascript
jQuery.Uploadify插件实现带进度条的批量上传功能
2016/06/08 Javascript
移动端翻页插件dropload.js(支持Zepto和jQuery)
2016/07/27 Javascript
解决vue页面DOM操作不生效的问题
2018/03/17 Javascript
js实现网页同时进行多个倒计时功能
2019/02/25 Javascript
Vue设置长时间未操作登录自动到期返回登录页
2020/01/22 Javascript
python获取图片颜色信息的方法
2015/03/18 Python
浅析AST抽象语法树及Python代码实现
2016/06/06 Python
Python中的探索性数据分析(功能式)
2017/12/22 Python
Python编写一个优美的下载器
2018/04/15 Python
python 读取文件并替换字段的实例
2018/07/12 Python
python2.7实现邮件发送功能
2018/12/12 Python
使用python绘制3维正态分布图的方法
2018/12/29 Python
使用Python实现Wake On Lan远程开机功能
2020/01/22 Python
pytorch Dataset,DataLoader产生自定义的训练数据案例
2021/03/03 Python
html5中canvas学习笔记2-判断浏览器是否支持canvas
2013/01/06 HTML / CSS
福克斯租车:Fox Rent A Car
2017/04/13 全球购物
2019年Java 最常见的 面试题
2016/10/19 面试题
随机分配座位,共50个学生,使学号相邻的同学座位不能相邻
2014/01/18 面试题
《乞巧》教学反思
2014/02/27 职场文书
公务员上班玩游戏检讨书
2014/09/17 职场文书
英文导游词
2015/02/13 职场文书
罚款通知怎么写
2015/04/22 职场文书
考勤制度通知
2015/04/25 职场文书
亮剑观后感300字
2015/06/05 职场文书
python如何读取.mtx文件
2021/04/22 Python
万能密码的SQL注入漏洞其PHP环境搭建及防御手段
2021/09/04 SQL Server