If you have set a custom error handler function with set_error_handler() then it will still get called, but this custom error handler can (and should) call error_reporting() which will return 0 when the call that triggered the error was preceded by an @.
Das heißt, wenn du einen eigenen error handler benutzt, wird der error handler auch bei errors von Funktionen aufgerufen, die eigentlich mit '@' versehen. Der error_reporting level wird dabei von PHP aber zur Laufzeit auf '0' gesetzt - daher muss man, wie beschreiben, im error handler das error_reporting level selbst noch mal überprüfen. Das macht der error handler von Contao auch, allerdings mit
PHP-Code:
ini_get('error_reporting')
statt mit
PHP-Code:
error_reporting()
Wie bereits auf GitHub und hier im Thread beschrieben war meine ursprüngliche Vermutung, dass dies das Problem ist. Lokal konnte ich den Verdacht bei meinem Webserver aber nicht bestätigen. Beide Funktionen geben bei mir '0' zurück, auch wenn das im Server konfigurierte error_reporting level größer '0' ist.
Wenn du willst, dass dieser Fehler behoben wird, wäre es nicht schlecht, wenn du dich daran beteiligst die Ursache zu finden.
Lesezeichen