在PHP中查看@抑制错误

时间:2011-03-04 09:19:12

标签: php

我知道您可以使用@来抑制错误。 但无论如何你可以让php忽略@?

在我的情况下,我必须使用使用@的第3方脚本,脚本很大,我很难找到它死的地方。

6 个答案:

答案 0 :(得分:6)

当您使用PHP Xdebug extension时,您可以使用error control operator忽略this config setting @

xdebug.scream = 1

这会禁用@(关闭)运算符,以便不再隐藏通知,警告和错误。

答案 1 :(得分:4)

scream extension打破沉默。

答案 2 :(得分:2)

每个自定义错误处理程序都会收到已删除的错误消息:

set_error_handler("var_dump");

只是一个例子。您通常会选择更好的报告功能。

答案 3 :(得分:1)

  

但无论如何你可以让php忽略@?

我不这么认为,不,没有@deceze所示的扩展名。

您可以设置custom error handler。如果您将其配置为忽略error_reporting()设置,当0设置在使用@调用的函数内时,您可以在那里输出错误。

答案 4 :(得分:1)

您可以使用

print_r(error_get_last());

在该脚本之后获取最后生成的错误,以便捕获被抑制的错误。

进一步阅读error_get_last()

答案 5 :(得分:0)

ini_set('scream.enabled', true);

你需要安装scream pecl扩展名:

http://www.php.net/manual/en/book.scream.php