我如何在NetBeans中调试PHP

时间:2014-01-24 10:49:12

标签: php debugging netbeans

  • 我正在使用Wamp服务器来运行Apache和PHP。
  • 我使用NetBeans PHP作为我的IDE。

我想打开调试器,我想到了:

  • Apache和PHP需要知道我希望他们告诉我的NetBeans他们已经加载了一个页面,因此它应该在它可以触发断点时进行监听
  • Netbeans需要告诉Apache和PHP它有一个应该暂停的断点。

我一直在尝试更改各种位和bob,试图使调试器在NetBeans中工作 所有这些似乎都在php.ini文件中:

zend_extension = "c:/wamp/bin/php/php5.4.16/zend_ext/php_xdebug-2.2.3-5.4-vc9.dll"

[xdebug]
xdebug.remote_enable = off
xdebug.profiler_enable = off
xdebug.profiler_enable_trigger = off
xdebug.profiler_output_name = cachegrind.out.%t.%p
xdebug.profiler_output_dir = "c:/wamp/tmp"

我真的不明白上面的内容是什么,但我一直在教程后跟着教程,没有在哪里。

最终发生的事情是我按下Netbeans中的运行按钮,调试器部分一直在说连接,而我的浏览器已经加载了页面并显示了所有内容,忽略了我想要在某一点上突破的事实。

有什么想法吗?

2 个答案:

答案 0 :(得分:1)

当您安装netbeans时,它会自动将这些行添加到您的PHP.ini文件(C:\ wamp \ bin \ apache {your-version-of-apache} \ bin \ php.ini)中,正如James所描述的那样。 / p>

要解决netbeans说“等待连接到netbeans-xdebug”的问题,请按照以下几个步骤进行操作。

  1. 删除l将php.ini文件中的以下行更改为

    zend_extension =“c:/wamp/bin/php/php5.4.16/zend_ext/php_xdebug-2.2.3-5.4-vc9.dll”

    [Xdebug的]

    xdebug.remote_enable = 1

    xdebud.idekey = “netbeans的-Xdebug的”

    xdebug.profiler_enable = 1

  2. 在netbeans中点击工具>选项> php>调试

  3. 确保调试器端口为9000,会话ID为netbeans-xdebug

答案 1 :(得分:0)

我有一个类似的问题,并遇到一个帖子来解决问题。我的html表单(testform.html)调用了一个php脚本(runQuery.php),Netbeans无法在runQuery.php的设置断点处中断

通过在像这样的论坛上搜索检查php.ini和Netbeans中的所有配置设置后,我发现如果项目的索引文件是PHP文件,netbeans将仅在断点处中断。这非常重要,否则你将花费数小时试图弄清楚为什么断点不起作用。

在Netbeans中,进入文件/项目属性/运行配置,检查索引文件是否为PHP文件。在我的情况下,我将我的索引文件从testform.html更改为testform.php并且它工作正常,我能够突破断点。

相关问题