1

我正在为我的 PHP 应用程序使用 netbeans 设置 xdebug,托管在本地 xampp 安装(Windows 7)上

根据 netbeans / xdebug 文档,安装和命令行测试成功并正常工作。但是,当我在代码中添加断点时,无论我将它放在代码中的什么位置,它都会显示为“损坏的”断点。当我运行带有调试器的应用程序时,它无法在这些断点处停止。

我已经做了很多搜索,但没有找到一个很好的解释,有人有建议吗?

谢谢

4

1 回答 1

0

解决方案1:

您需要在项目源代码和 Xdebug 输出之间配置正确的映射。你可以在这里做:

Project Window -> right click on project name -> Properties -> Run Configuration -> Advanced -> Path mapping

解决方案2:

如果 xdebug 配置正确,请检查 php 信息。您可以通过空 php 文件中的 phpinfo() 检查它并在浏览器中运行它:

<?php
 phpinfo();

尝试去找:

This program makes use of the Zend Scripting Language Engine:
Zend Engine v2.4.0, Copyright (c) 1998-2012 Zend Technologies
with Xdebug v2.2.1, Copyright (c) 2002-2012, by Derick Rethans

然后在 php.ini 中(您可以在 phpinfo() 中检查该字段的位置,添加以下部分:

[xdebug]
xdebug.remote_enable = On
xdebug.profiler_enable = On
xdebug.profiler_enable_trigger = On
xdebug.profiler_output_name = cachegrind.out.%t.%p
xdebug.profiler_output_dir = "c:/xamp/tmp"
xdebug.remote_handler=dbgp
xdebug.remote_port=9100
xdebug.remote_host=localhost

(确保此目录 c:/xamp/tmp 是否存在)

然后在netbeans中:

Tools -> Options -> PHP -> Debugging

设置:调试器端口:9100 并选择“Stop at First Line”

保存它并调试它现在应该可以正常工作的应用程序。

于 2013-03-18T12:27:29.817 回答