windows - NetBeans PHP 不会因异常而中断

标签 windows exception netbeans xampp xdebug

我正在尝试在 Windows 上使用 NetBeans PHP 6.8 和 XAMPP 来调试一些 PHP,并在 php.ini 中设置 xdebug。一步步看起来工作正常,但是当 PHP 中的网站出现严重异常时,NetBeans 不会中断它。

我听说要在 Exception 上添加断点,但在 NetBeans 6.8 中找不到它。 Ctrl + Shift + F8 不允许我在“异常”上中断,只能在“方法”上中断。

最佳答案

就像您的评论所说,您通常需要将remote_mode设置为“jit”。

如果调试不起作用,您可以检查以下几项内容:

  • 在代码中添加 xdebug_break(); 行,然后查看调试器是否触发。
  • 在 php.ini/xdebug.ini 文件中添加一些日志记录:

    xdebug.remote_log="C:\temp\xdebug.log"
    

    查看该日志文件,看看是否收到提到的断点事件。

  • 检查 phpinfo() 以查看是否有如下输出:
        This program makes use of the Zend Scripting Language Engine:
        Zend Engine v2.2.0, Copyright (c) 1998-2009 Zend Technologies
            with Xdebug v2.0.5, Copyright (c) 2002-2008, by Derick Rethans  

如果没有“with Xdebug”行,即使列出了完整的 xdebug 选项集,您也会得到输出、xdebug_break() 调试,但没有用户设置的断点。这也可能是异常断点的问题。

造成这种情况的一般原因是加载 xdebug 扩展的方式错误。您需要将其加载为 zend_extension=/path/to/xdebug.so - 删除以“extension=”或“zend_extension_ts=”开头的任何其他加载行。

关于windows - NetBeans PHP 不会因异常而中断,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1963313/

相关文章:

windows - 有没有办法在 dired 中列出驱动器号?

c# - Mono 仅在某些计算机上获得 "System.ExecutionEngineException: SIGILL "

c# - 未处理的异常终止执行时退出代码?

java - 在 Netbeans 中使用位图字体

windows - Powershell:某些 SID 无法翻译

windows - 在 Cruisecontrol 中设置环境变量

java - 抛出异常时EDT是否重启?

java - 如何从netbeans客户端获取xml请求和xml响应到ws

java - Netbeans 中未使用的查找变量的快捷方式是什么?

c++ - 我的小型转储变得太大而无法被 Visual Studio 加载,我该如何解决这个问题?