In diesem Artikel werden die Fähigkeiten der PHP -Fehlerberichterstattung untersucht und festgelegt, wie PHP -Tools verwendet werden, um Fehler auf steuerbare Weise zu behandeln und so die Debugging -Zeit zu sparen.
PHP ist im Wesentlichen eine Programmiersprache "Leichtgewichtige Ausnahme". Dies bedeutet, dass das Skript zwar weiterhin ausgeführt wird, wenn es die Ausnahmebehandlung unterstützt, es nicht ausführt, es sei denn, es kommt zu einem tödlichen Fehler auf, unabhängig davon, was passiert.
Beispiel:
<?php echo $sitepoint;
Der obige Code gibt die folgende Nachricht zurück:
<code>Notice: Undefined variable: sitepoint in PHP shell code on line 1</code>
PHP wirft nur einen Benachrichtigungsfehler und führt weiterhin glücklich aus. "Schwergewichts -Ausnahme" Sprachen (wie Python) werfen einen Fehler und stoppen Sie die Ausführung.
Daher müssen PHP -Entwickler beim Schreiben von Code besonders darauf achten. Bei der Programmausführung können unerwartete Ergebnisse auftreten, da Benachrichtigungen nicht die Ausführung nicht aufhören, sondern das korrekte Verhalten des Programms beeinflussen können.
Bevor Sie vorstellen, wie Sie den PHP -Fehlerberichterstattungsstil einstellen, verstehen wir zunächst mehrere Stufen des Schweregrads des PHP -Fehlers.
PHP hat drei Haupttypen von Nachrichten: Fehler, Benachrichtigung und Warnung. Sie repräsentieren unterschiedliche Schweregradniveaus: e_error, e_notice und e_warning.
standardmäßig protokolliert PHP keine Fehler. Dazu müssen wir die Variable display_errors in der PHP -Konfigurationsdatei (Php.ini -Datei) öffnen, um explizit anzugeben, um die Protokollierung zu starten.
In dieser Datei können wir PHP auch mitteilen, ob wir Benachrichtigungen und Warnungen protokollieren möchten und wo dieses Protokoll protokolliert werden soll.
kann auch die Protokollierung im Code auslösen. Dazu können wir die Funktion "ERROR_LOG () verwenden. Da Fehlerprotokollierung nicht im Mittelpunkt dieses Artikels steht, finden Sie hier weitere Informationen.
Wir können die Funktion "ERROR_REPORTING () verwenden, um das Standardverhalten des Standard -PHP -Fehlerberichts zu ändern. Mit dieser Funktion können wir die Fehlerebene der Skriptdauer festlegen. Dies geschieht durch Übergabe einer oder mehrere vordefinierte Fehlerkonstanten an die Funktion.
Wenn wir beispielsweise nicht nur Fehler, sondern auch Benachrichtigungen sehen möchten, können wir:
verwenden<?php error_reporting(E_ERROR | E_NOTICE);
Mit dieser Erklärung wird die Skriptausführung nicht nur beim Auftreten eines Fehlers gestoppt, sondern auch, wenn eine Benachrichtigung auftritt.
Wir können auch den Fehlersteuerungsoperator (@) verwenden, um PHP zu unterdrücken, um bestimmte Fehler zu unterdrücken. Indem Sie diesen Operator zu Beginn eines Ausdrucks platzieren, werden alle Fehler, die das direkte Ergebnis des Ausdrucks sind
<?php echo @$sitepoint;
Seien Sie sehr vorsichtig, wenn Sie diesen Operator verwenden, da er den Fehler vollständig verbergt hat. Der Fehler wird nicht nur nicht angezeigt, sondern wird auch nicht an das Fehlerprotokoll gesendet. Während dies harmlos erscheint, maskiert die Verwendung dieses Bedieners tiefere strukturelle Probleme im Code und im Masken möglicherweise falsches Verhalten.
Verwenden Sie PHP als Sprache "Schwergewichtsausnahme"
Im folgenden Beispiel wird der benutzerdefinierte Funktionsfehler () als Fehlerhandler unter Verwendung der Funktion set_error_handler () festgelegt. Wenn ein fataler Fehler auftritt
Verwenden dieser Methode können wir Ausführungsfehler wie mit Ausnahmen behandeln, sie in einen Versuch einwickeln… Catch -Anweisung und entsprechende Anweisungen dazu in diesem Fall geben.
<?php echo $sitepoint;
Insgesamt kann PHP Fehler auf sehr lockere Weise behandeln. Es hängt davon ab, dass unsere Entwickler vorhandene Tools verwenden, um sie besser zu handhaben, damit wir die Sprache optimal nutzen können. Durch die Verwendung dieser Tools können wir Fehler kontrolliert behandeln und die Debugging -Zeit sparen.
Was ist ein Fehlerbericht in PHP?
Sie können die Fehlerberichterstattung in PHP aktivieren, indem Sie die ERROR_REPORTING -Konfigurationsanweisung in PHP -Skript oder PHP.ini -Konfigurationsdatei einstellen. Sie können auch die Funktion "ERROR_REPORTINGING" verwenden, um die Berichtsebene in Ihrem Code dynamisch zu ändern.
Sie können den Fehler anmutig mit dem Versuch ... Fangblock verwenden und die bedingte Anweisung verwenden, um die Fehlerbedingung zu überprüfen, bevor Sie den Code fortsetzen.
Wie log das PHP -Fehler für das Debuggen und Analyse ab?
Das obige ist der detaillierte Inhalt vonSchneller Tipp: So verwalten die Fehlerberichterstattung in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!