我正在为我的PHP应用程序设置netbeans的xdebug,托管在本地xampp安装(Windows 7)
根据netbeans / xdebug文档,安装和命令行测试成功并正常工作。但是,当我在代码中添加断点时,无论我将其放在代码中的什么位置,它都会显示为“断开”的断点。当我使用调试器运行应用程序时,它无法在这些断开的断点处停止。
我做了很多搜索,但没有找到一个很好的解释,有人在那里有建议吗?
由于
答案 0 :(得分: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 并选择“停在第一线”
保存并调试应用程序它应该可以正常工作。