go to bug id or search bugs for
If a custom error handler is set (using set_error_handler()), error_reporting settings are not respected - errors of E_ALL level are reported to the custom handler, even if something else (e.g. E_PARSE level) is set using error_reporting().
Add a Patch
Add a Pull Request
Yes, that's by design.
error_reporting() allows you to select which
errors are shown, while still allowing you to react to errors which,
for instance, you might prefer that the user not see.
If you do not wish to cope with or know about a certain kind of
error, simply have your error handler ignore it.