禁用已弃用的错误

时间:2012-04-18 22:21:43

标签: php

我想全局启用已弃用的错误,但是针对特定的第三方代码禁用它们,我没有时间修复它们。 所以,我在php.ini中有这个:     error_reporting = E_ALL & ~E_NOTICE | E_DEPRECATED

这就在我要禁用警告的行之前     error_reporting(E_ALL & ~E_NOTICE & ~E_DEPRECATED);

但是,它不起作用,我仍然收到该特定行的警告。如果我在php.ini中全局禁用它,它就可以了。我使用的是PHP 5.3.10。什么想法可能是错的?

2 个答案:

答案 0 :(得分:1)

想出来。第三方代码具有自定义错误处理程序,显然它覆盖了您使用error_reporting()设置的任何内容。当我注释掉set_error_handler()行时,error_reporting()生效。

答案 1 :(得分:0)

在php.ini中添加以下错误报告行:

error_reporting(E_ALL & ~E_WARNING & ~E_NOTICE & ~E_DEPRECATED);

然后重启服务器并检查它。