在网上看到一篇文章说xdebug+wincachegrind是php性能调优好工具。于是去下载了这个,安装使用一下看看。:)
下面是我的安装配置
1 下载xdebug http://www.xdebug.org
下载wincachegrind:http://sourceforge.net/projects/wincachegrind/
2 把xdebug copy到php扩展文件目录:d:/wamp/bin/php/php5.2.5/ext/
编辑php.ini ,在其中添加如下配置行:
zend_extension_ts="d:/wamp/bin/php/php5.2.5/ext/xdebug.dll"
;;;;;;;;;;;;;;;;;;;
; Xdebug Settings ;
;;;;;;;;;;;;;;;;;;;
xdebug.auto_trace=On
xdebug.collect_params=On
xdebug.collect_return=On
xdebug.trace_output_dir="d:/wamp/bin/php/debuginfo"
xdebug.profiler_enable=On
xdebug.profiler_output_dir="d:/wamp/bin/php/debuginfo"
然后重新启动apache.
配置说明
zend_extension_ts="d:/wamp/bin/php/php5.2.5/ext/xdebug.dll"
加载xdebug模块。这里不能用extension=php_xdebug.dll的方式加载,必须要以zend的方式加载。安装文档上说的。
xdebug.auto_trace=on;
自动打开“监测函数调用过程”的功能模块。该功能可以在你指定的目录中将函数调用的监测信息以文件的形式输出。此配置项的默认值为off。
xdebug.collect_params=on;
打开收集“函数参数”的功能。将函数调用的参数值列入函数过程调用的监测信息中。此配置项的默认值为off。
xdebug.collect_return=on
打开收集“函数返回值”的功能。将函数的返回值列入函数过程调用的监测信息中。此配置项的默认值为off。
xdebug.trace_output_dir="d:/wamp/bin/php/debuginfo"
设定函数调用监测信息的输出文件的路径。
xdebug.profiler_enable=on
打开效能监测器。
xdebug.profiler_output_dir="d:/wamp/bin/php/debuginfo"
设定效能监测信息输出文件的路径。
3 安装WinCacheGrind,这个就不用说了:)。
4 打开IE访问http://localhost:8080/demo/index.php
然后打开目录:d:/wamp/bin/php/debuginfo/ 可以看到自动生成的文件cachegrind.out.xxxx 和 trace.2732500414.xt
用WinCacheGrind就可以看到index.php执行过程中调用了那些function,mothed,定义了那些变量,载入了那些文件和执行这些操作花费的时间。
呵呵,这样就可以开始寻找那些花费时间最都的操作了!
下面贴个图: