我在OS X El Capitan上运行PHP版本7.0.2,每次执行包含一些错误代码的PHP脚本时,它都会报告错误,然后似乎自动执行回溯。我不太确定这是否是PHP 7中的新功能,但我似乎无法在任何地方或其他遇到类似问题的人中找到它。
例如:
<?php
echo $a;
?>
如果从CLI执行,将返回以下输出:
PHP Notice: Undefined variable: a in /Path/to/file.php on line 2
PHP Stack trace:
PHP 1. {main}() /Path/to/file.php:0
Notice: Undefined variable: a in /Path/to/file.php on line 2
Call Stack:
0.0002 350944 1. {main}() /Path/to/file.php:0
欢迎任何有关可能导致问题的原因的见解。 感谢。
答案 0 :(得分:1)
我遇到的问题不在于PHP 7.0.2本身,而是在某种程度上被称为XDebug的扩展。用于高级错误报告的XDebug在我的另一个项目中引起了问题,并且通过禁用它,它似乎解决了我的问题。要禁用XDebug,您需要做的就是修改php.ini文件并将值debug.remote_autostart,debug.default_enable和debug.remote_enable从'on'更改为'off'。
答案 1 :(得分:0)
将xdebug.default_enable=0
添加到php.ini
将阻止XDebug发送堆栈跟踪,而不会放弃分析和调试功能。