Heim  >  Artikel  >  Backend-Entwicklung  >  PHP ErrorException (PHP-Fehlerausnahme)

PHP ErrorException (PHP-Fehlerausnahme)

王林
王林nach vorne
2023-08-30 18:25:021610Durchsuche

PHP ErrorException(PHP错误异常)

Einführung

PHPs Exception-Klasse implementiert die ThrowableSchnittstelle. Die ErrorException-Klasse erbt die Exception-Klasse. ErrorException kann explizit ausgelöst werden, wenn Sie einen ansonsten ignorierten Fehler, z. B. eine Benachrichtigung oder Warnung, abfangen und behandeln möchten.

PHP Core enthält die folgenden vordefinierten Fehlerkonstanten

Wert Konstante Beschreibung
1 E_ERROR Schwerwiegender Laufzeitfehler.
2 E_WARNING Laufzeitwarnung (nicht schwerwiegender Fehler).
4 E_PARSE Fehler beim Parsen bei der Kompilierungszeit.
8 E_NOTICE Laufzeitbenachrichtigung.
16 E_CORE_ERROR Ein schwerwiegender Fehler, der beim ersten Start von PHP aufgetreten ist.
32 E_CORE_WARNING Eine Warnung (nicht schwerwiegender Fehler), die beim ersten Start von PHP aufgetreten ist.
64 E_COMPILE_ERROR Schwerwiegender Fehler bei der Kompilierung.
128 E_COMPILE_WARNING Warnung zur Kompilierungszeit (nicht schwerwiegender Fehler).
256 E_USER_ERROR Vom Benutzer generierte Fehlermeldung.
512 E_USER_WARNING Benutzergenerierte Warnmeldung.
1024 E_USER_NOTICE Benutzergenerierte Benachrichtigungsnachricht.
2048 E_STRICT Wenn aktiviert, empfiehlt PHP Änderungen an Ihrem Code, um Code-Interoperabilität und Vorwärtskompatibilität sicherzustellen.
4096 E_RECOVERABLE_ERROR Abfangbarer schwerwiegender Fehler.
8192 E_DEPRECATED Laufzeitbenachrichtigung.
16384 E_USER_DEPRECATED Vom Benutzer generierte Warnmeldung.
32767 E_ALL Alle Fehler und Warnungen, E_STRICT

Zusätzlich zu den von der Exception-Klasse geerbten Eigenschaften und Methoden führt die ErrorException-Klasse auch eine Eigenschaft und eine Methode ein, wie unten gezeigt –

protected int severity ;
final public getSeverity ( void ) : int

Der Schweregrad der Ausnahme wird durch die Ganzzahl dargestellt, die dem Fehlertyp in der obigen Tabelle zugeordnet ist.

ErrorException-Beispiel

Im folgenden Skript wird die benutzerdefinierte Funktion errhandler über 通过set_error_handler() als Fehlerhandler festgelegt. Funktion . Es löst eine ErrorException aus, wenn ein schwerwiegender Fehler auftritt, der die Datei nicht lesen kann.

Beispiel

Live-Demonstration

<?php
function errhandler($severity, $message, $file, $line) {
   if (!(error_reporting() & $severity)) {
      echo "no error";
      return;
   }
   throw new ErrorException("Fatal Error:No such file or directory", 0, E_ERROR);
}
set_error_handler("errhandler");
/* Trigger exception */
try{
   $data=file_get_contents("nofile.php");
   echo $data;
}
catch (ErrorException $e){
   echo $e->getMessage();
}
?>

Das obige Beispiel zeigt die folgende Ausgabe

Ausgabe

Fatal Error:No such file or directory

Das obige ist der detaillierte Inhalt vonPHP ErrorException (PHP-Fehlerausnahme). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen