PHP Fehlermeldungen
Aus VMS1 Tutorial
Je nach dem wie PHP konfiguriert wurde, werden Fehlermeldungen direkt ausgegeben oder in eine Datei geschrieben.
Für den produktiven Einsatz bietet sich die zweite Methode an, da der Besucher einer Website ja keinerlei Interesse an möglichen Fehlermeldungen hat (haben sollte).
Wenn einem eine Fehlermeldung mal nicht weiterhilft (da diese auf Englisch sind und manchmal etwas unverständlich), kann man auf diversen Seiten nachschlagen/nachfragen:
www.user-archiv.de/php-fehlermeldungen.html
Um die genaue Ursache eines Fehlers zu finden und diesen dann auch beheben zu können, wird häufig Debugging angewendet.
Fehlerklassen
- E_ERROR Fehler, Skriptausführung wird abgebrochen
- E_WARNING Warnung, Skript wird weiter ausgeführt (häufig treten dann Folgefehler auf)
- E_PARSE Syntaxfehler im PHP Code. Verarbeitung des Skriptes wird abgebrochen.
- E_NOTICE Notiz, die auf mögliche unsaubere oder unklare Programmierung hinweist, und damit einen fehlerhaften Zustand auslösen könnte
- E_STRICT Gibt Vorschläge, wie der Programmcode erweitert werden kann, um bestmögliche Funktionalität zu erreichen
- E_DEPRECATED Meldet die Verwendung von veralteten Methoden, die durch Aktuelle ersetzt werden sollten, um mit nachfolgenden PHP Versionen kompatibel zu sein
- E_ALL Umfasst alle Fehler und Warnungen
Beispiele
Warning: mysql fetch array(): supplied argument is not a valid MySQL result resource
Warning: mysql_query(): Access denied for user 'www-data'@'localhost' (using password: NO)
Warning: mysql_query(): A link to the server could not be established
Warning: vsprintf(): Too few arguments
Warning: Cannot modify header information - headers already sent
Warning: include(): Unable to access ../lib/functions.lib.php
Warning: include(../lib/functions.lib.php): failed to open stream: No such file or directory
Warning: Invalid argument supplied for foreach()
Warning: fread(): Length parameter must be greater than 0
Parse error: syntax error, unexpected
Deprecated: Function ereg() is deprecated
Kategorien: FAQ | PHP