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 缓冲的免费实现方法
Oct 09 PHP
详解php的魔术方法__get()和__set()使用介绍
Sep 19 PHP
php IP转换整形(ip2long)的详解
Jun 06 PHP
thinkphp的CURD和查询方式介绍
Dec 19 PHP
简单实用的PHP防注入类实例
Dec 05 PHP
PHP利用hash冲突漏洞进行DDoS攻击的方法分析
Mar 26 PHP
PHP函数shuffle()取数组若干个随机元素的方法分析
Apr 02 PHP
PHP中如何防止外部恶意提交调用ajax接口
Apr 11 PHP
针对thinkPHP5框架存储过程bug重写的存储过程扩展类完整实例
Jun 16 PHP
php中file_get_contents()函数用法实例
Feb 21 PHP
微信公众平台开发教程②微信端分享功能图文详解
Apr 10 PHP
详细分析PHP 命名空间(namespace)
Jun 30 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
索尼SONY ICF-SW7600GR电路分析与改良
2021/03/02 无线电
PHP实现对png图像进行缩放的方法(支持透明背景)
2015/07/15 PHP
php版微信公众平台实现预约提交后发送email的方法
2016/09/26 PHP
laravel利用中间件防止未登录用户直接访问后台的方法
2019/09/30 PHP
ThinkPHP5与单元测试PHPUnit使用详解
2020/02/23 PHP
Javascript打印网页部分内容的脚本
2008/11/17 Javascript
js removeChild 障眼法 可能出现的错误
2009/10/06 Javascript
Extjs学习笔记之一 初识Extjs之MessageBox
2010/01/07 Javascript
跨域请求之jQuery的ajax jsonp的使用解惑
2011/10/09 Javascript
基于Jquery插件开发之图片放大镜效果(仿淘宝)
2011/11/19 Javascript
JQuery用户名校验的具体实现
2016/03/18 Javascript
indexedDB bootstrap angularjs之 MVC DOMO (应用示例)
2016/06/20 Javascript
boostrapTable的refresh和refreshOptions区别浅析
2017/01/22 Javascript
基于React实现表单数据的添加和删除详解
2017/03/14 Javascript
JS+CSS实现滚动数字时钟效果
2017/12/25 Javascript
使用ngrok+express解决本地环境中微信接口调试问题
2018/02/26 Javascript
Vue下路由History模式打包后页面空白的解决方法
2018/06/29 Javascript
详解vue-cli官方脚手架配置
2018/07/20 Javascript
@angular前端项目代码优化之构建Api Tree的方法
2018/12/24 Javascript
js实现简单进度条效果
2020/03/25 Javascript
Python的string模块中的Template类字符串模板用法
2016/06/27 Python
Python3对称加密算法AES、DES3实例详解
2018/12/06 Python
Python DES加密实现原理及实例解析
2020/07/17 Python
解决阿里云邮件发送不能使用25端口问题
2020/08/07 Python
python删除文件、清空目录的实现方法
2020/09/23 Python
MYSQL相比于其他数据库有哪些特点
2013/07/19 面试题
css animation配合SVG制作能量流动效果
2021/03/24 HTML / CSS
文秘应届生求职信
2014/07/05 职场文书
迎新春趣味活动方案
2014/08/24 职场文书
党性锻炼的心得体会
2014/09/03 职场文书
个人学习群众路线心得体会
2014/11/05 职场文书
千与千寻观后感
2015/06/04 职场文书
三八妇女节新闻稿
2015/07/17 职场文书
保安辞职申请书应该怎么写?
2019/07/15 职场文书
Python中rapidjson参数校验实现
2021/07/25 Python
高通2023 年将发布高性能PC处理器
2022/04/29 数码科技