我无法将PHP脚本调试为脚本。它始终在启动后立即终止。我在php.ini中设置了一个Xdebug日志,但它完全没有用。 Xdebug 出现在我的phpinfo()上,所以我知道它是在Apache中加载的。
我也可以将代码调试为网页(它不提供变量信息,但不会在断点上停止),所以我知道Eclipse有适当的服务器设置。两个调试选项都使用相同的PHP exe(使用XAMPP安装的那个,使用vc6编译器编译的php 5.3.1)。我确保Xdebug的编译符合这些设置。
在一个或许相关的说明:我注意到我只能使用zend_extension命令加载Xdebug,而不是zend_extension_ts,即使我的PHP版本确实是线程安全的?我不得不承认我有点困惑。
我也非常确定无论我在Eclipse中选择“XDebug”,我都做到了。我已经按照两个教程在这里无济于事。有人有主意吗?我已经尝试了与我的XAMPP(2.0.6-dev)捆绑在一起的Xdebug版本,我还下载了一个新的.dll版本2.1。
谢谢!
答案 0 :(得分:6)
Excellent instructions for Setup XDebug on XAMPP and Eclipse @ user629300说明适用于3.5之前的eclipse版本,请参阅链接以获取基于版本的说明的说明。同样Getting XDebug to work with apache xampp to debug php,有很好的解释图片。虽然它们有点陈旧。
第一个链接的详细信息摘要,假设PHP> 5.3(希望现在每个人都在跑步!):
确保您的php.ini文件包含以下内容:
[XDebug]
zend_extension={xampp-folder}\php\ext\php_xdebug.dll
xdebug.remote_enable=1
xdebug.remote_host="localhost"
xdebug.remote_port=9000
xdebug.remote_handler="dbgp"
[Zend]
标题下的所有配置条目,尤其是那些以zend_extension
现在,您应该可以通过将XDEBUG_SESSION_START
添加到网址的查询字符串中来查看Eclipse中的断点,例如: http://localhost/?XDEBUG_SESSION_START
。
答案 1 :(得分:-1)
首先下载xDebug的dll 然后编辑你的php.ini文件 zend_extension_ts =“C:\ xampp \ php \ zendOptimizer \ lib \ ZendExtensionManager.dll” 确保该行未被注释 重启apache 确保您正在编辑正确的php.ini文件