zoukankan      html  css  js  c++  java
  • Eclipse for php + Xdebug搭建PHP的调试环境

      Xdebug安装教程

      下载Xdebug

      首先我们需要下载Xdebug,务必根据安装的PHP版本,选择合适的Xdebug版本,由于我是在Windows环境下安装PHP的,所以选择下载Windows版本的Xdebug2.1.0(5.3 VC6 (32 bit)),下载下来的Xdebug文件为php_xdebug-2.1.0-5.3-vc6.dll,这是由于Xdebug是作为PHP模块的形式被安装配置与使用的。

      Xdebug安装提示:如果你不清楚安装的PHP版本,你可以通过phpinfo()函数参看,同时Xdebug也提供了phpinfo输出信息分析工具来帮助你分析如何安装Xdebug,只要将phpinfo输出信息复制提交即可,地址:Xdebug phpinfo信息分析地址

      安装Xdebug

      将下载的php_xdebug-2.1.0-5.3-vc6.dll复制到PHP安装目录下的ext目录,此处为C:phpext,ext目录专门用来存放PHP扩展库DLL文件。

    修改php.ini的配置

    [Xdebug]
    zend_extension = D:/php-5.3/ext/php_xdebug-2.1.2-5.3-vc6.dll
    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

    第四步:启动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的配置。

  • 相关阅读:
    Understanding String Table Size in HotSpot
    Java性能优化之JVM GC(垃圾回收机制)
    为什么新生代内存需要有两个Survivor区
    jmap命令详解
    JVM GC 机制与性能优化
    JVM1.6 GC详解
    jstat命令详解
    锁的性能相关
    JAVA AQS源码分析
    kafka的安装 (单机)
  • 原文地址:https://www.cnblogs.com/lovefendi/p/3867886.html
Copyright © 2011-2022 走看看