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中利用XML技术构造远程服务(上)
Oct 09 PHP
由php if 想到的些问题
Mar 22 PHP
php与php MySQL 之间的关系
Jul 17 PHP
PHP编程过程中需要了解的this,self,parent的区别
Dec 30 PHP
PHP提取数据库内容中的图片地址并循环输出
Mar 21 PHP
PHP中fwrite与file_put_contents性能测试代码
Aug 02 PHP
使用PHP curl模拟浏览器抓取网站信息
Oct 28 PHP
php导出word文档与excel电子表格的简单示例代码
Mar 08 PHP
typecho插件编写教程(六):调用接口
May 28 PHP
PHP+JS三级菜单联动菜单实现方法
Feb 24 PHP
php文件包含目录配置open_basedir的使用与性能详解
Apr 03 PHP
CentOS7编译安装php7.1的教程详解
Apr 18 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开发过程中常用函数收藏
2009/12/14 PHP
apache+codeigniter 通过.htcaccess做动态二级域名解析
2012/07/01 PHP
PHP实现文件下载【实例分享】
2017/04/28 PHP
JavaScript toFixed() 方法
2010/04/15 Javascript
iframe 父窗口和子窗口相互的调用方法集锦
2010/12/15 Javascript
原生JS实现加入收藏夹的代码
2013/10/24 Javascript
javascript中HTMLDOM操作详解
2014/12/11 Javascript
JS实现文件动态顺序载入的方法
2015/03/07 Javascript
JQuery中模拟image的ajaxPrefilter与ajaxTransport处理
2015/06/19 Javascript
JS动态增删表格行的方法
2016/03/03 Javascript
jQuery实现边框动态效果的实例代码
2016/09/23 Javascript
微信小程序  生命周期详解
2016/10/27 Javascript
js 获取今天以及过去日期
2017/04/11 Javascript
jQuery实现的弹幕效果完整实例
2017/09/06 jQuery
纯javascript前端实现base64图片下载(兼容IE10+)
2018/09/14 Javascript
详解vue2.0 资源文件assets和static的区别
2018/11/27 Javascript
JavaScript实现选项卡效果的分析及步骤
2019/04/16 Javascript
微信小程序登陆注册功能的实现代码
2019/12/10 Javascript
详解vue中在父组件点击按钮触发子组件的事件
2020/11/13 Javascript
python 随机数使用方法,推导以及字符串,双色球小程序实例
2017/09/12 Python
Django分页查询并返回jsons数据(中文乱码解决方法)
2018/08/02 Python
python3.7.0的安装步骤
2018/08/27 Python
python-numpy-指数分布实例详解
2019/12/07 Python
python3实现在二叉树中找出和为某一值的所有路径(推荐)
2019/12/26 Python
详解Python高阶函数
2020/08/15 Python
Python 2.6.6升级到Python2.7.15的详细步骤
2020/12/14 Python
网站设计师的岗位职责
2013/11/21 职场文书
2014年大班保育员工作总结
2014/12/02 职场文书
淘宝好评语句大全
2014/12/31 职场文书
父亲节活动总结
2015/02/12 职场文书
安全生产先进个人总结
2015/02/15 职场文书
办公室行政主管岗位职责
2015/04/09 职场文书
职场干货:简历中的自我评价应该这样写!
2019/05/06 职场文书
关于办理居住证的介绍信模板
2019/11/27 职场文书
PHP策略模式写法
2021/04/01 PHP
用python删除文件夹中的重复图片(图片去重)
2021/05/12 Python