phpBuddy

Code-Schnipsel

Jeder Programmierer sammelt im Laufe der Jahre Dutzende nützliche Funktionen, Klassen und sonstige Snipets. Hier gibt es einige nützliche Goodies, die jeder frei in seine eigenen Projekte einbauen kann.
Reinschauen lohnt sich!

Sie sind hier: Startseite Fehlerbehandlung
Fehlermeldungen und Fehlerbehandlung - Error Reporting
Beitragsseiten
Fehlermeldungen und Fehlerbehandlung
Error Reporting
Display Errors
Fehler protokollieren
Eigene Fehlerbehandlung
Exceptions
Fazit und Download
Alle Seiten

PHP Error Reporting / Fehlermeldungen

Das Error Reporting, also die Meldungen die PHP bei Fehlern ausgibt, ist die Wurzel allen Übels. Okay, das klingt etwas hart und stimmt auch nur bedingt. Die vielseitigen und oftmals sehr detaillierten Fehlermeldung sind ein unerlässlicher Helfer bei der Entwicklung einer Webseite, haben aber auf einer Webseite im produktiven Einsatz nichts mehr verloren. Die PHP Funktion, mit der dieses Ausgabeverhalten gesteuert werden kann nennt sich:

Als Parameter kann man entweder den numerischen Wert des Level angeben oder die entsprechende PHP-interne Konstante für das gewünschte Level. Momentan gibt es insgesamt 18 Level (Stand PHP 5.3.1), wovon einige Level andere beinhalten. Eine komplette Übersicht findet man wie immer in der Dokumentation zu error_reporting.
Zwei Level sind dort nicht aufgelistet und das sind:

// Error Reporting unterdrücken
error_reporting( 0 );
// Error Reporting auf höchster Ebene anzeigen
error_reporting( -1 );

Der Wert -1 stellt das höchste Level der Fehlermeldungen dar, dass alle anderen Level beinhaltet - mehr Fehlermeldung geht also nicht.


Fazit für Error Reporting

Während der Entwicklung sollte das Error Reporting eingeschaltet sein und zwar so, dass jegliche Art von Meldung angezeigt wird: error_reporting(-1);
Die Applikation sollte dann soweit verbessert und von Fehlern bereinigt werden, bis keinerlei Fehler mehr angezeigt werden. Das gilt auch und im besonderen für Notice-Meldungen, die nicht initialisierte Variablen monieren. (Welche Gefahr im nicht initialisieren von Variablen lauern kann wird in einem späteren Teil dieser Serie erläutert)

Sobald die Webapplikation, bzw. Webseite dann öffentlcih zugänglich gemacht wird um ihren Dienst zu verrichten, sollten alle Meldungen deaktiviert werden: error_reporting(0);