Bei der Entwicklung von PHP -Anwendungen ist die Fehlerbehandlung ein wichtiger Bestandteil der Sicherstellung der Systemstabilität. Durch die schnelle Erfassungs- und Handhabungsfehler können Entwickler Probleme im Programm schnell beheben und beheben, um den zuverlässigen Betrieb des Systems zu gewährleisten. In diesem Artikel wird eine Technik eingeführt, mit der Fehlerberichte an Administrator -Postfächer mit der Funktion set_error_handler gesendet werden.
Zunächst müssen wir eine benutzerdefinierte Fehlerbehandlungsfunktion erstellen. Diese Funktion fängt einen PHP -Fehler auf und senden die Fehlermeldung an den Administrator -Mailbox. Hier ist der Beispielcode:
<?php function sendErrorReport($errno, $errstr, $errfile, $errline) { $to = 'admin@example.com'; // Administrator -E -Mail -Adresse $subject = 'PHP Fehlerbericht'; // E -Mail -Betreff $message = "Fehlermeldung:[$errno] $errstr - $errfile:$errline"; // Fehlerdetails // Senden Sie eine E -Mail if (mail($to, $subject, $message)) { return true; } else { return false; } } ?>
Der obige Code definiert einen Fehlerhandler namens SendErorRport. Diese Funktion empfängt die Fehlerebene ($ ERRNO), Fehlermeldung ($ ERRStr), Fehlerdatei ($ ERRFILE) und Fehlerzeilennummer ($ errline) als Parameter und sendet die Fehlermeldung an die vom Administrator angegebene Mailbox über die E -Mail -Funktion.
Als nächstes verwenden wir die Funktion set_error_handler, um eine benutzerdefinierte Fehlerbehandlungsfunktion einzurichten. Hier ist ein Codebeispiel für die Konfiguration:
<?php // 设置Fehlerbericht级别 error_reporting(E_ALL); // Schalten Sie die Fehleranzeige ein ini_set('display_errors', 1); // Einstellung der Fehlerbehandlungsfunktion set_error_handler('sendErrorReport'); ?>
Im obigen Code haben wir zunächst die Fehlerberichterstattungsstufe über die Funktion der Fehler_reporting auf e_all festgelegt, um sicherzustellen, dass alle Arten von PHP -Fehlern erfasst werden. Als nächstes aktivieren wir die Fehleranzeigefunktion über die Funktion ini_set. Schließlich verwenden wir die Funktion "set_error_handler", um die benutzerdefinierte Fehlerbehandlungsfunktion SendErorreport als Standardfehlerhandhabungsfunktion festzulegen.
Am Ende des Codes erstellen wir einen Fehler, indem wir eine undefinierte Variable absichtlich ausgeben. Zu diesem Zeitpunkt wird die Fehlermeldung von der SendErorRorRorT -Funktion erfasst und an die Administrator -Mailbox gesendet.
Es ist zu beachten, dass die Fehlerbehandlungsfunktion mit set_error_handler nur von PHP angegebene Fehler aufnehmen kann und keine Syntaxfehler oder tödliche Fehler aufnehmen kann. Für diese Arten von Fehlern müssen Entwickler die Details immer noch abrufen, indem sie das PHP -Fehlerprotokoll oder das Serverprotokoll anzeigen.
Um die Zuverlässigkeit von Fehlerberichten sicherzustellen, wird zusätzlich eine zusätzliche Fehlerbehandlung empfohlen, bevor Fehlerberichte gesendet werden. Beispielsweise können Fehlerinformationen in einer Protokolldatei oder einer Datenbank aufgezeichnet werden, sodass noch Fehlerdetails erhalten werden können, wenn die E -Mail wegen Fehler gesendet wird.
In diesem Artikel wird Tipps zur Verwendung der Funktion SET_Error_handler von PHP 7 beschrieben, um Fehlerberichte an Administrator -Mailboxen zu senden. Durch benutzerdefinierte Fehlerbehandlungsfunktionen können Entwickler Fehler in der Anwendung sofort verstehen und diese schnell beheben und reparieren, wodurch die Stabilität und Zuverlässigkeit des Systems verbessert wird. Ich hoffe, diese Technik kann Ihnen helfen, den Fehlerbehebungsmechanismus zu verbessern und die Entwicklungseffizienz zu verbessern.