用xdebug优化php的三个小窍门

xdebug的2.0正式版已经发布了。这个工具用在php的代码调试,优化方面效果很不错。下面贴上俺使用过程中的几个小窍门。

  • xdebug生成profile文件,可以用KCachegrind来查看,但是这个工具只在linux下面可用,没有windows下的版本。这里推荐一个win下的免费工具——wincachegrind,也可以查看xdebug的profile文件,用来分析php代码运行情况足够用了(偶尔不太稳定)。
  • xdebug一般情况下只会对一个请求做profile记录,如果需要查看几个请求的运行情况合集,可以设置xdebug.ini的
    xdebug.profiler_aggregate = 1

    记得重启你的apache。

  • 如果在xdebug.ini里设置了
    xdebug.profiler_enable = 1

    那么每次程序运行期间xdebug都会记录profile,这样对程序的运行速度有很大的影响。为了避免这一情况发生,可以让xdebug仅在需要的时候运行——设置

    xdebug.profiler_enable_trigger = 1

    这样,只有你用get/post方式提交XDEBUG_PROFILE变量的情况下,xdebug才会开始干活。

另:将最新版本的xdebug和APC同时使用,没有出现兼容性问题,运行良好。

5 Replies to “用xdebug优化php的三个小窍门”

  1. 不知道你有没有和EAccele组合用过呢?

    哦,不如随便问一下你对APC和EA的对比评价吧?

  2. 你说的对,看花眼了,它居然把最新的版本放在最下面…

    我没有在正式场合使用apc的经验,还不能提供比较数据。但是eacc多出来的一个功能是加密php代码哦。

Leave a Reply

Your email address will not be published.