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

How to disable deprecated warnings in runtime php?

我想在运行时禁止来自此 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.

error_reporting() 的值存在语法错误。要排除某些错误,您需要使用波浪号 ~ 而不是破折号 -:

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