2011-03-04 77 views
4

我知道你可以使用@来抑制错误。 但是,无论如何,你可以让PHP忽略@?在php中查看@抑制错误

在我的情况下,我必须使用使用@的第三方脚本,该脚本非常庞大,我很难找到它死去的地方。

+0

建议你只是他们所有编辑出来。先尝试全局搜索/替换。如果这比它应该做的更多,那么只需手工完成。 – 2011-03-04 09:22:06

+0

使用正则表达式删除'@'与 – diEcho 2011-03-04 09:22:21

回答

1

但是,有无论如何,你可以让PHP忽略@?

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

虽然你可以设置一个custom error handler。如果将其配置为忽略error_reporting()设置,那么在使用@调用的函数内时,该设置为0,则可以在那里输出错误。

4

还有scream extension打破沉默。

+0

有多高兴看到这个由戴耳机的家伙建议。 – 2011-03-04 09:24:58

+0

@Pekka我的电话是我个人的'@'操作员。 :O) – deceze 2011-03-04 09:26:19

1

您可以使用

print_r(error_get_last()); 

该脚本后,得到最后产生的错误,所以你可以赶上supressed错误。

进一步阅读error_get_last()

2

每个自定义错误处理程序接收抑制错误消息:

set_error_handler("var_dump"); 

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