Eigener Error-Handler mit PHP

Nun da klar ist, dass das vollständige Abstellen aller Fehlermeldungen eine schlechte Idee ist, wird man sich wahrscheinlich fragen, welche anderen Möglichkeiten es gibt. Eine der elegantesten Lösungen des Problems besteht darin, PHPs standardmäßiges Error-Handling-System durch ein eigenes zu ersetzen. Ein solcher eigener Error-Handler kann so eingerichtet werden, dass er Fehler so behandelt, wie man es gern möchte, von der Anzeige der Meldungen bis zum Format, in dem die Fehler protokolliert und verfolgt werden.

Die entsprechende PHP-Funktion hierfür heißt set_error_handler(). Sie erwartet den Namen einer benutzerdefinierten Funktion, an welche die Fehler übergeben werden. Wenn ein Fehler auftritt, wird diese Funktion automatisch mit vier Parametern aufgerufen: dem Fehlercode und der entsprechenden Nachricht, dem Namen des Scripts, das den Fehler erzeugt hat, sowie der Zeilenzahl der Anweisung, die den Fehler ausgelöst hat. Die Funktion ist dann verantwortlich dafür, wie sie mit dem Fehler umgeht.

Hier ein einfaches Beispiel (Listing E):

Listing E

Wenn man dieses Script ausführt, sollte man so etwas zu sehen bekommen:

Hier wurde der Standard-Error-Handler von PHP durch den Code in der benutzerdefinierten Funktion myHandler() ersetzt. Wenn die Variable $undefVar aufgerufen wird, wird während der Laufzeit eine PHP-Benachrichtigung über undefinierte Variablen erzeugt und an die Funktion myHandler() weitergereicht, zusammen mit der Information, wo der defekte Code aufgetreten ist. Dann gibt die Funktion myHandler() eine freundliche Botschaft aus, die mithilfe der erhaltenen Fehlerinformationen erläutert, was schiefgegangen ist.

Hinweis: Es ist wichtig, daran zu denken, dass Parsefehler und schwerwiegende Fehler (fatal errors) aufgrund ihrer Natur den eigenen Error-Handler umgehen und mit dem standardmäßigen PHP-Error-Handling-Mechanismus angezeigt werden. Die Anzeige dieser Fehler kann mithilfe der Standardfunktion error_reporting() kontrolliert werden, wie oben beschrieben.

Page: 1 2 3 4 5

ZDNet.de Redaktion

Recent Posts

Business GPT: Generative KI für den Unternehmenseinsatz

Nutzung einer unternehmenseigenen GPT-Umgebung für sicheren und datenschutzkonformen Zugriff.

4 Tagen ago

Alphabet übertrifft die Erwartungen im ersten Quartal

Der Umsatz steigt um 15 Prozent, der Nettogewinn um 57 Prozent. Im nachbörslichen Handel kassiert…

1 Woche ago

Microsoft steigert Umsatz und Gewinn im dritten Fiskalquartal

Aus 61,9 Milliarden Dollar generiert das Unternehmen einen Nettoprofit von 21,9 Milliarden Dollar. Das größte…

1 Woche ago

Digitalisierung! Aber wie?

Mehr Digitalisierung wird von den Unternehmen gefordert. Für KMU ist die Umsetzung jedoch nicht trivial,…

1 Woche ago

Meta meldet Gewinnsprung im ersten Quartal

Der Nettoprofi wächst um 117 Prozent. Auch beim Umsatz erzielt die Facebook-Mutter ein deutliches Plus.…

1 Woche ago

Maximieren Sie Kundenzufriedenheit mit strategischem, kundenorientiertem Marketing

Vom Standpunkt eines Verbrauchers aus betrachtet, stellt sich die Frage: Wie relevant und persönlich sind…

1 Woche ago