如何检查错误代码是否匹配 error_reporting

How to check if an error code matches error_reporting

假设我将 error_reporting 设置为 E_ALL & ~E_STRICT 并且触发了级别 E_USER_NOTICE(或任何其他级别)的错误。

如何检查 E_USER_NOTICE 是否匹配上面的 E_ALL & ~E_STRICT

为了澄清,给定上面的例子,if error_reporting(E_ALL & ~E_STRICT) 等于 [E_ERROR, E_NOTICE, E_WARNING ...] 的数组,我如何检查 E_NOTICE 是否是在那个隐喻数组中。

这应该是一个简单的 AND 操作。检查以下内容:

$errorLevels = E_ERROR | E_NOTICE;
echo $errorLevels & E_NOTICE ? 'match' : 'mismatch';