这是我的代码:
echo 'foo';
error_reporting(E_ALL);
echo 'this line doesnt end in a semi colon'
echo 'i should get an error here';
当我运行时,我没有错误。
不确定这是怎么回事?
答案 0 :(得分:12)
ini_set('display_errors', 1);
请注意,如果你在具有语法错误的文件中执行此操作,它将无法工作,因为它永远不会被执行。您也可以在php.ini中设置为true(不推荐用于生产服务器),或者如果您使用Apache,则在.htaccess中设置:
php_flag display_errors 1
答案 1 :(得分:2)
error_reporting指令不会帮助您在屏幕上显示错误消息。它负责显示哪个错误,而不是 。
如果您的PHP以Apache模块运行(很可能是这样),请将以下行添加到.htaccess
文件中:
php_value display_errors 1
切换到制作时,将其更改为
php_value display_errors 0
php_value log_errors 1
并在错误日志中查看它。
答案 2 :(得分:0)
您是否有任何类型的关闭挂钩,错误处理函数或全局异常捕获器正在运行?
语法错误在大型框架中可能很奇怪:)