xdebug php日志跟踪调试
来源:互联网 发布:中美商约 知乎 编辑:程序博客网 时间:2024/06/06 02:43
debug方式是:xdebug的
xdebug_start_trace();
/* 业务代码 */
xdebug_stop_trace();
他解决了我长久以来一个代码调试问题:比如有以下几个场景:
1、一个有几百行的函数,里面有很多return,现在函数异常返回了,但是我不知道是从哪一行返回的,这时候呢,我一般的做法都是每一行echo();die();太费事了。
2、接触一个新的框架,代码执行出现异常,怎么办呢,肯定也是一行一行的echo();die();
3、想学习一个新框架,想知道代码的执行轨迹:执行了哪些类、调用了哪些类的方法,等等。
现在呢,xdebug的代码跟踪,能帮我们轻松解决上面的问题。
xdebug的安装(网上我看到了很多的都是在说xdebug、phpstorm、chrome咋配合起来远程调试,搞得大家好像觉得xdebug用起来那么费事,那么高级,其实没必要):
1、安装php xdebug扩展(不再细说)
2、配置:这里只讲代码跟踪相关的配置:
cat /etc/php.d/xdebug.ini
extension=/usr/lib64/php/modules/xdebug.so
;代码跟踪日志文件位置,注意要先新建这个traces目录,并设置777
xdebug.trace_output_dir = /tmp/traces
;代码跟踪日志文件格式
xdebug.trace_output_name = trace.%c.%p
;trace中显示函数的参数值,这个很有用,待会细说
xdebug.collect_params = 4
xdebug.collect_includes = On
xdebug.collect_return = On
xdebug.show_mem_delta = On
xdebug_start_trace();
/* 业务代码 */
xdebug_stop_trace();
他解决了我长久以来一个代码调试问题:比如有以下几个场景:
1、一个有几百行的函数,里面有很多return,现在函数异常返回了,但是我不知道是从哪一行返回的,这时候呢,我一般的做法都是每一行echo();die();太费事了。
2、接触一个新的框架,代码执行出现异常,怎么办呢,肯定也是一行一行的echo();die();
3、想学习一个新框架,想知道代码的执行轨迹:执行了哪些类、调用了哪些类的方法,等等。
现在呢,xdebug的代码跟踪,能帮我们轻松解决上面的问题。
xdebug的安装(网上我看到了很多的都是在说xdebug、phpstorm、chrome咋配合起来远程调试,搞得大家好像觉得xdebug用起来那么费事,那么高级,其实没必要):
1、安装php xdebug扩展(不再细说)
2、配置:这里只讲代码跟踪相关的配置:
cat /etc/php.d/xdebug.ini
extension=/usr/lib64/php/modules/xdebug.so
;代码跟踪日志文件位置,注意要先新建这个traces目录,并设置777
xdebug.trace_output_dir = /tmp/traces
;代码跟踪日志文件格式
xdebug.trace_output_name = trace.%c.%p
;trace中显示函数的参数值,这个很有用,待会细说
xdebug.collect_params = 4
xdebug.collect_includes = On
xdebug.collect_return = On
xdebug.show_mem_delta = On
0 0
- xdebug php日志跟踪调试
- PHP调试跟踪之XDebug使用总结
- XDEBUG + ECLIPSE for php 单步跟踪调试PHP代码
- Xdebug + Eclipse 单步跟踪调试PHP代码
- Xdebug + Eclipse 单步跟踪调试PHP代码
- php xdebug 调试
- Vim+XDebug调试PHP
- xdebug php 调试
- netbeans+xdebug调试php
- xdebug php 调试
- php使用xdebug调试
- PHP调试之Xdebug
- sublime xdebug调试php
- phpstorm + xdebug + Xdebug helper 调试php
- PHP调试工具 Xdebug + WinCacheGrind
- NetBeans+PHP+XDebug调试程序
- 使用xdebug调试PHP程序
- 使用xdebug调试PHP程序
- 题目1466:排列与二进制
- GYM 100712 B.Rock-Paper-Scissors(水~)
- 1061.判断题(15)
- SSH学习之Struts2中的拦截器
- tess4j正确的使用 OCR
- xdebug php日志跟踪调试
- android中拷贝assets下的资源文件到SD卡中(可以超过1M)
- 利用ambari搭建hadoop、hbase集群
- nginx、php查看编译参数
- git查看某个文件修改历史
- 浅析=======Struts2之==========valueStack
- 四海八荒,最全邮件主视觉形象创建指南
- String类型的属性和方法(一)
- HTML与CSS基础之兄弟元素选择器(九)