关闭

XDebug用法大全(二)断点调试和性能分析

标签: php断点调试eclipse
1323人阅读 评论(0) 收藏 举报
分类:

Xdebug除了可以以堆栈跟踪的方式显示异常之外,还可以令PHP可以像C#那样进行断点调试,甚至对代码进行性能分析。

一、使用Eclipse+Xdebug进行断点调试


1)安装Eclipse和PDT

首先,需要安装后Eclipse的PHP环境,在Eclipse官网网站上已经有集成的安装包了。

第二步,安装Eclipse的PDT插件,“Help”=>“Install New Software”,在弹出的对话框中点击“Add...”,安装PDT插件。

PS:官方网站为https://eclipse.org/pdt/,如果在Eclipse的官网下载的集成PHP程序,可以忽略这个步骤,因为下载的包已经包含PDT这个插件


安装完成后,进行下一步配置

2)配置Xdebug

[xdebug]
#必需参数,开启远程调试
xdebug.remote_enable = 1
xdebug.remote_host = 127.0.0.1
xdebug.remote_port = 9000
xdebug.remote_handle = dbgp
xdebug.profiler_enable = on
xdebug.profiler_enable_trigger = on
xdebug.profiler_output_name = cachegrind.out
xdebug.profiler_output_dir = "/tmp/xdebug/"
xdebug.trace_output_dir="/tmp/xdebug/" 
;开启自动跟踪
xdebug.auto_trace = On
;开启异常跟踪
xdebug.show_exception_trace = On
;开启远程调试自动启动
xdebug.remote_autostart = On
;收集变量
xdebug.collect_vars = On
;收集返回值
xdebug.collect_return = On
;收集参数
xdebug.collect_params = On

3)配置Eclipse

配置PHP Executable,点击“Windows”->"Preferences"->"PHP"->"PHP Executable",这里需要配置CIL和CGI2中方式。


为每个项目配置Debug Server,项目属性->"PHP"->"Debug"



到此为止,已经完成基本配置了,以下尝试对简单的PHP脚本进行调试。


二、使用工具分析Xdebug日志文件

除了断点调试之外,Xdebug还可以进行简单性能分析,xdebug的配置
xdebug.profiler_output_name = cachegrind.out
xdebug.profiler_output_dir = "/tmp/xdebug/"
xdebug.trace_output_dir="/tmp/xdebug" 


会输出一个out的数据文件,存储php脚本执行的消耗时间数据,在windows下面,可以通过WinCacheGrind 这个工具来分析该文件(http://sourceforge.net/projects/wincachegrind/)。将.out文件拖入工具,可以显示各函数的执行情况。



1
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:140256次
    • 积分:3015
    • 等级:
    • 排名:第11619名
    • 原创:159篇
    • 转载:31篇
    • 译文:3篇
    • 评论:11条
    博客专栏
    最新评论