首页 > 代码库 > Hbuilder使用xdebug配置php断点调试

Hbuilder使用xdebug配置php断点调试

1. 背景

不得不说Hbuilder是免费的前端开发工具中比较好用的,而且配合aptana开发php也马马虎虎(毕竟写前端的时候多些)。本人原是搞java的,后来打算用php做些个人项目(因为服务器成本低),于是快速上手了php。。但是作为动态语言,那智障的开发工具和代码提示让我们这种用惯了eclipse的javaer蛋疼不已,经常因为一些莫名的错误而找不到原因,虽然知道可以用xdebug和zenddebug配置断点调试,但是以前一直没有配置成功过。。今天因为一个bug实在头疼,不暴错,只是逻辑上的 问题,如果在多个文件几百行代码中一个个去var_dump,删了改改了删实在太痛苦了,所以下定决心看再次尝试下配置php断点调试。。

2.操作步骤

  1. 首先到xdebug官网下载和你的php版本一致的xdebug扩展,我的是php-5.4.29-Win32-VC9-x86,所以下载的是php_xdebug-2.2.5-5.4-vc9.dll.

  2. 把php_xdebug-2.2.5-5.4-vc9.dll复制到php的目录下,我是复制到D:\PHP\php_xdebug-2.2.5-5.4-vc9.dll.

  3. 修改php.ini配置如下,我关闭了部分保存分析文件的配置,这样对网站速度影响小一些。。

    [Xdebug]
    ;你的xdebug文件路径,不要有空格和中文名之类的就不用再多说了。。
    zend_extension=D:/PHP/php-5.4.29-Win32-VC9-x86/php_xdebug-2.2.5-5.4-vc9.dll
    ;开启自动跟踪
    xdebug.auto_trace = Off
    ;开启异常跟踪
    xdebug.show_exception_trace = Off
    ;开启远程调试自动启动
    xdebug.remote_autostart = On
    ;开启远程调试
    xdebug.remote_enable = On
    ;收集变量
    xdebug.collect_vars = Off
    ;收集返回值
    xdebug.collect_return = Off
    ;收集参数
    xdebug.collect_params = Off
    xdebug.trace_output_dir="D:/PHP/php-5.4.29-Win32-VC9-x86/Projecs"
    xdebug.profiler_enable=Off
    xdebug.profiler_output_dir="D:/PHP/php-5.4.29-Win32-VC9-x86/Projecs"
    xdebug.remote_host=localhost
    xdebug.remote_port=9000
    xdebug.remote_handler=dbgp
  4. 修改Hbuilder配置。

只需要把端口号改成php.ini里面配置的就行了,然后在php文件上加个断点,访问下浏览器,看下会不会停下来。。。

需要补充的一点是在windows下php最大执行时间好像是30秒,可能会影响到调试,我的已经改成max_execution_time=6000
足足100分钟了。。如果遇到问题可以把这里改大点 。。

Hbuilder使用xdebug配置php断点调试