9.1 PHP-Fehler- und Warnmeldungen in Ausnahmen umwandeln

Problem

Sie wollen, dass bei allen Problemen, die in PHP Fehler- und/oder Warnmeldungen verursachen, stattdessen eine Exception geworfen wird. Zum Beispiel wollen Sie Code absichern, in dem schon andere Exceptions geworfen werden.

Lösung

Deklarieren Sie eine Error-Handler-Funktion, in der Sie eine Exception werfen, und registrieren Sie die Funktion mit set_error_handler():

function myErrorHandler($eNumber, $eMessage) {
    throw new Exception($eMessage, $eNumber);
}

set_error_handler("myErrorHandler", E_ALL – E_NOTICE);

try {
    $file = file_get_contents("/pfad/nach/nirgendwo");
}
catch (Exception $e) {
    echo "File not found!";
}

Diskussion

Wenn Sie von Grund auf neuen Code schreiben, werden Sie wahrscheinlich ...

Get PHP 5 Kochbuch now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.