• Eclipse for php + Xdebug搭建PHP的调试环境


    转自:http://blog.csdn.net/zztfj/article/details/18750295

    Eclipse for php + Xdebug搭建PHP的调试环境

     

        第一步:到Eclipse的官网去下载PHP-Eclipse:http://www.eclipse.org/downloads/packages/eclipse-php-developers/heliossr1

    第二步:下载Xdebug (下载地址位于:http://xdebug.org/download.php,我的PHP版本为 PHP 5.3.28 Thread Safety, Apach为2.2.25,使用的端口号8080),我下载的Xdebug版本为php_xdebug-2.2.3-5.3-vc9.dll,并且放入到"PHP/ext目录中。

     

        第三步:在PHP5里面找到php.ini,在这个文件的最后面加入如下配置信息:

    zend_extension = D:phpextphp_xdebug-2.2.3-5.3-vc9.dll

    ;zend_extension_ts = D:phpextphp_xdebug-2.2.3-5.3-vc9.dll

    ;extension = php_xdebug-2.2.3-5.3-vc9.dll

    [Xdebug]

    xdebug.auto_trace = On

    xdebug.show_exception_trace = On

    xdebug.remote_autostart = On

    xdebug.remote_enable = On

    xdebug.collect_vars = On

    xdebug.collect_return = On

    xdebug.collect_params = On

    xdebug.trace_output_dir=”D:/xDebugLog”

    xdebug.profiler_output_dir=”D:/xDebugLog”

    xdebug.profiler_enable=On

    xdebug.remote_host=localhost

    xdebug.remote_port=9000

    xdebug.remote_handler=dbgp

     

        这里要特别注意:如果在文件里有其他的zend_extension_ts,需要注释掉,否则apache无法启动。

     

        第四步:启动apache。

     

        第五步:在eclipse的项目里的Properties里面找到"PHP Debug",在PHP Debugger里面选择"XDebug"

     

     第六步:再在Windows->Preferences里面配置下PHP Servers

    第七步:再在Windows->Preferences里面配置下PHP Executables

        第八步:再在Run->Debug Configurations里面确认Path Mapping的配置和第六步中的一致。

       接下来,进入debug界面,就可以开始设置断点进行debug了。

    配置中遇到的问题:

    1、在phpinfo();打印的信息中一直找不到Xdebug的字样。

    解决办法:在php.ini文件中,作如下修改:

    zend_extension_ts = D:phpextphp_xdebug-2.2.3-5.3-vc9.dll

    [Xdebug]

    xdebug.auto_trace = On

    修改为:

    ;zend_extension_ts = D:phpextphp_xdebug-2.2.3-5.3-vc9.dll

    extension = php_xdebug-2.2.3-5.3-vc9.dll

    [Xdebug]

    xdebug.auto_trace = On

    2、在代码中添加断点,但是断点无效,不能停止。

    解决办法:在php.ini文件中,作如下修改:

    ;zend_extension_ts = D:phpextphp_xdebug-2.2.3-5.3-vc9.dll

    extension = php_xdebug-2.2.3-5.3-vc9.dll

    [Xdebug]

    xdebug.auto_trace = On

    修改为:

    zend_extension = D:phpextphp_xdebug-2.2.3-5.3-vc9.dll

    ;zend_extension_ts = D:phpextphp_xdebug-2.2.3-5.3-vc9.dll

    ;extension = php_xdebug-2.2.3-5.3-vc9.dll

    [Xdebug]

    xdebug.auto_trace = On

    我的php版本明明是Thread safe,但是此处使用zend_extension_ts,却不行,不太明白。

    3、断点只能在第一行起效,后面的仍不能停止。

    解决办法:参考上面第五步,选中Use MultiSession;参考上面第八步,确认Path Mapping的配置。

  • 相关阅读:
    浅析嵌入式程序设计中的优化问题
    TCP粘包问题
    使用python 批量 配对t检验 医学 基础研究 数据分析
    Ubuntu误删系统文件修复办法
    飞思卡尔powerpc交叉编译环境的
    ubuntu packege下载网址
    数组对象里面对日期进行排序
    c# 字符串以逗号分割属性加上单引号
    Vue mysql 变量赋值, 获取数组
    Element vue Select 下拉框默认
  • 原文地址:https://www.cnblogs.com/dirt2/p/6730835.html
Copyright © 2020-2023  润新知