使用Eclipse调试PHP?

14

什么是使用Eclipse进行PHP调试的最佳方法?具体而言,我正在尝试解决Drupal 6安装中的一些问题。

我喜欢Eclipse用于Java的调试功能。是否有一种方法可以用于PHP?

3个回答

19

我从未使用Eclipse来开发JAVA,但如果你问的是一个允许设置断点、浏览当前堆栈跟踪、查看变量内容等图形调试器,那么有(至少一个)解决方案:

您可以使用Xdebug扩展和Eclipse PDT作为IDE:后者能够使用前者作为调试器,并为其提供接口——这类似于您在其他语言/IDE中使用可视化调试器时可能期望的功能。

我曾经使用过这个组合来调试Drupal,以便了解执行的内容,顺序,方式等等(不易用钩子机制手动获取),而且它确实运行得很好。

网络上有教程介绍如何设置这两个工具以使调试器正常工作。例如:


这里是一个截图(在这里,我已经在Dotclear的后台某个位置设置了断点)


(来源:pascal-martin.fr

(理论上,点击图片应该可以看到更大的版本)


窗口顶部的图标可让您执行以下操作:

  • 逐步执行
  • 进入 / 退出函数 / 方法

您还可以:

  • 查看变量内容(截图右上角)
  • 查看堆栈跟踪,显示您所在的位置(截图左上角)
  • 当然,查看代码中的位置(底部)


我还听说Eclipse PDT可以使用Zend Debugger扩展而不是Xdebug;但我从未尝试过。


2
您可以将以下代码添加到php.in文件中以启用调试器。
[XDebug]
zend_extension = "D:\opt\lampp\php\ext\php_xdebug.dll"
xdebug.remote_enable=On
xdebug.remote_autostart=On
xdebug.remote_handler=dbgp
xdebug.remote_host="localhost"
xdebug.remote_port=9000
xdebug.remote_mode=req

2
如果由于某种原因您不使用PDT,则可以使用CodeMix作为轻量级替代品在Eclipse中调试PHP。当然,您仍需要安装XDebug - 有关详细信息,请参见此文档

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接