如何在运行时php中禁用已弃用的警告?

时间:2018-03-12 14:07:31

标签: php error-reporting

我想在运行时通过此trigger_error('Deprecated', E_USER_DEPRECATED);来阻止警告。从我看过,我可以使用error_reporting(E_ALL & -E_USER_DEPRECATED & -E_DEPRECATED);。但这不起作用。我试过error_reporting一般使用error_reporting(0)。这有效。我错过了什么?我没有找到解决问题的另一种方法。并没有注意到这种方式对其他人不起作用。

我的代码不会禁止弃用警告:

error_reporting(E_ALL & -E_USER_DEPRECATED);
trigger_error('Deprecated', E_USER_DEPRECATED);

Php版本:7.0.14

1 个答案:

答案 0 :(得分:1)

error_reporting()的值有语法错误。要排除某些错误,您需要使用代字号~而不是短划线-

error_reporting(E_ALL & ~E_USER_DEPRECATED);
//                      ^ this one
trigger_error('Deprecated', E_USER_DEPRECATED);