我只使用Xdebug进行IDE调试,并希望阻止它重新格式化PHP在浏览器中抛出的错误消息。我只想要常规的PHP错误消息,没有堆栈跟踪,表格布局或其他任何东西。我如何实现这一目标?
答案 0 :(得分:5)
在这种情况下,您要设置:xdebug.default_enable=0
。这将在出现错误消息时禁用堆栈跟踪。
答案 1 :(得分:1)
您可以在php.ini中控制XDebug的堆栈跟踪:
请参阅http://xdebug.org/docs/stack_trace
有关完整配置选项:http://xdebug.org/docs/all_settings
答案 2 :(得分:0)
此代码将解决问题,而无需更改xdebug配置。 https://xdebug.org/docs/all_functions
if (function_exists('xdebug_disable')) {
//Disables stack traces
//Disable showing stack traces on error conditions.
xdebug_disable();
}
按照Derick的建议设置xdebug.default_enable=0
效果很好,但是需要更改xdebug设置。
您可能想使用register_shutdown_function()
启用xdebug堆栈跟踪时发现以下问题:
有趣的是,如果在xdebug配置中未指定xdebug.default_enable=0
,则ini_get('xdebug.default_enable')
将返回字符串“ 0”。如果设置xdebug.default_enable=0
,则它也是字符串“ 0”。因此,无论是否启用ini_get('xdebug.default_enable')
,您都无法使用{{1}}。