Fehlerbehandlung ist ein wichtiger Teil beim Erstellen von Skripten und Webanwendungen. Wenn Ihr Code keine Fehlererkennungscodierung aufweist, sieht das Programm unprofessionell aus und birgt Sicherheitsrisiken.
Grundlegende Fehlerbehandlung: Verwenden Sie die Funktion die()
Das erste Beispiel zeigt ein einfaches Skript, das eine Textdatei öffnet: (Empfohlenes Lernen: PHP-Video-Tutorial)
<?php $file=fopen("welcome.txt","r"); ?>
Wenn die Datei nicht existiert, erhalten Sie eine Fehlermeldung wie diese:
Warning: fopen(welcome.txt) [function.fopen]: failed to open stream: No such file or directory in C:\webfolder\test.php on line 2
Um zu vermeiden, dass Benutzer solche Fehler erhalten In der obigen Meldung prüfen wir, ob die Datei existiert, bevor wir darauf zugreifen:
<?php if(!file_exists("welcome.txt")) { die("File not found"); } else { $file=fopen("welcome.txt","r"); } ?>
Wenn die Datei nun nicht existiert, erhalten Sie eine Fehlermeldung wie diese:
File not found
Im Vergleich zum vorherigen Code Der obige Code ist effizienter, da er einen einfachen Fehlerbehandlungsmechanismus verwendet, der das Skript nach einem Fehler beendet.
Allerdings ist es nicht immer sinnvoll, das Skript einfach zu beenden. Sehen wir uns alternative PHP-Funktionen zur Fehlerbehandlung an.
Erstellen eines benutzerdefinierten Fehlerhandlers
Das Erstellen eines benutzerdefinierten Fehlerhandlers ist sehr einfach. Wir haben einfach eine dedizierte Funktion erstellt, die aufgerufen werden kann, wenn in PHP ein Fehler auftritt.
Die Funktion muss mindestens zwei Parameter verarbeiten können (Fehlerstufe und Fehlermeldung), kann aber bis zu fünf Parameter akzeptieren (optional: Datei, Zeilennummer und Fehlerkontext):
error_function(error_level,error_message, error_file,error_line,error_context)
Fehler auslösen
Es ist nützlich, einen Fehler auszulösen, wenn die Benutzereingabe im Skript ungültig ist. In PHP wird diese Aufgabe durch trigger_error() erledigt.
Fehlerprotokollierung
Standardmäßig sendet PHP die Fehlerprotokollierung an das Fehlerprotokollierungssystem oder die Datei des Servers basierend auf der error_log-Konfiguration in php.ini. Mit der Funktion error_log() können Sie ein Fehlerprotokoll an eine angegebene Datei oder ein Remote-Ziel senden.
Sich selbst eine Fehlermeldung per E-Mail zu senden, ist eine gute Möglichkeit, über einen bestimmten Fehler benachrichtigt zu werden.
Das obige ist der detaillierte Inhalt vonSo erkennen Sie PHP-Fehler. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!