Heim 类库下载 PHP类库 PHP-Fehlerbehandlung

PHP-Fehlerbehandlung

Oct 08, 2016 pm 05:42 PM
php错误处理

Fehlertyp

Aufgrund der cleveren Einstellung des Fehlertyps Ganzzahlwert kann der bitweise Operator verwendet werden

1 E_ERROR (Ganzzahl)

Schwerwiegender Laufzeitfehler. Bei dieser Art von Fehler handelt es sich im Allgemeinen um eine nicht behebbare Situation, beispielsweise um ein Problem, das durch die Speicherzuweisung verursacht wird.
Führt dazu, dass das Skript beendet wird und nicht weiter ausgeführt wird
Beispiel: Aufruf einer undefinierten Funktion, es gibt eine nicht abgefangene Ausnahme

2 E_WARNING (Ganzzahl)

Laufzeitwarnung (nicht schwerwiegend Fehler)
gibt nur eine Aufforderungsmeldung aus, aber das Skript wird nicht beendet.

4 E_PARSE (Ganzzahl)

Fehler beim Parsen der Syntax bei der Kompilierung.
Analysefehler werden nur vom Parser generiert.
register_shutdown_function kann diesen Fehler, der in dieser Datei aufgetreten ist, nicht erfassen

8 E_NOTICE (Ganzzahl)

Laufzeitbenachrichtigung. Zeigt an, dass das Skript auf eine Situation stößt, die als Fehler erscheinen kann, aber es kann auch ähnliche Benachrichtigungen in Skripten geben, die normal ausgeführt werden können
Beispiel: Verwendung undefinierter Variablen

16 E_CORE_ERROR (Ganzzahl)

Schwerwiegender Fehler beim Start der PHP-Initialisierung.
Dieser Fehler ähnelt E_ERROR, wird jedoch vom Kern der PHP-Engine generiert.

32 E_CORE_WARNING (Ganzzahl)

Warnung (nicht schwerwiegender Fehler) ist während des PHP-Initialisierungsstarts aufgetreten
Ähnlich wie E_WARNING, aber vom PHP-Engine-Kern generiert

E_COMPILE_

Kompilierungsbezogen
64 E_COMPILE_ERROR (Ganzzahl)
Schwerwiegender Fehler bei der Kompilierung. Ähnlich wie E_ERROR, jedoch von der Zend-Skript-Engine generiert. seit PHP 4
128 E_COMPILE_WARNING (integer)
Warnung zur Kompilierungszeit (nicht schwerwiegender Fehler). Ähnlich wie E_WARNING, jedoch von der Zend-Skript-Engine generiert.

E_USER_

Benutzergenerierte
256 E_USER_ERROR (Ganzzahl)
Benutzergenerierte Fehlermeldung. Ähnlich wie E_ERROR, wird jedoch vom Benutzer mithilfe der PHP-Funktion trigger_error() im Code generiert. seit PHP 4
512 E_USER_WARNING (integer)
Vom Benutzer generierte Warnmeldung. Ähnlich wie E_WARNING, wird jedoch vom Benutzer mithilfe der PHP-Funktion trigger_error() im Code generiert. seit PHP 4
1024 E_USER_NOTICE (integer)
Vom Benutzer generierte Benachrichtigungsinformationen. Ähnlich wie E_NOTICE, aber vom Benutzer mithilfe der PHP-Funktion trigger_error() im Code generiert

2048 E_STRICT (Ganzzahl)

Aktivieren Sie PHPs Vorschläge für Codeänderungen, um sicherzustellen, dass der Code das Beste bietet Qualität Beste Interoperabilität und Vorwärtskompatibilität.

4096 E_RECOVERABLE_ERROR (Ganzzahl)

Ein schwerwiegender Fehler, der abgefangen werden kann. Es weist darauf hin, dass ein potenziell gefährlicher Fehler aufgetreten ist, der jedoch noch nicht dazu geführt hat, dass sich die PHP-Engine in einem instabilen Zustand befindet. Wenn der Fehler nicht von einem benutzerdefinierten Handler (set_error_handler()) abgefangen wird, wird er zu E_ERROR und das Skript wird beendet.

8192 E_DEPRECATED (Ganzzahl)

Laufzeitbenachrichtigung.
Wenn diese Option aktiviert ist, wird eine Warnung vor Code ausgegeben, der in zukünftigen Versionen möglicherweise nicht richtig funktioniert.

16384 E_USER_DEPRECATED (Ganzzahl)

Benutzergenerierte Warnmeldung. Ähnlich wie E_DEPRECATED, wird jedoch vom Benutzer mithilfe der PHP-Funktion trigger_error() im Code generiert.

30719 E_ALL (integer)

E_STRICT Alle ausgehenden Fehler und Warnmeldungen

Fehlerbehandlungsbezogene Funktionen

error_reporting

int error_reporting ( [ int $level ] )

Legen Sie fest, welche Art von PHP-Fehlern gemeldet werden sollen

// Alle PHP-Fehlerberichte schließen und eine neue Fehlerberichtsebene zurückgeben error_reporting(0);/ / Einfache laufende Fehler meldenerror_reporting(E_ERROR | E_WARNING | E_PARSE);

Wenn keine Parameter verwendet werden, wird die aktuelle Fehlerberichtsstufe zurückgegeben

error_get_last

Letzte abrufen Fehler, der aufgetreten ist, register_shutdown_function() verwendet oft

array error_get_last (void)

, um das Ergebnis zurückzugeben

Array(
[type] => 8
[message] => Undefinierte Variable: a [file] => C:WWWindex.php [line] => eine Fehler-/Warnungs-/Hinweisinformation auf Benutzerebene

bool trigger_error ( string $error_msg [, int $error_type = E_USER_NOTICE ]

error_log

Fehlerinformationen senden an das Webserver-Fehlerprotokoll oder eine Datei, es wird erstellt, wenn die Datei nicht existiert

bool error_log ( string $message [, int $message_type = 0 [, string $destination [, string $extra_headers ]]] )

message_type

Legen Sie fest, wohin Fehler gesendet werden sollen

0 Nachricht wird an das PHP-Systemprotokoll gesendet, wobei je nach Einstellung der Protokollierungsmechanismus des Betriebssystems oder eine Datei verwendet wird von error_log in php.ini. Dies ist die Standardoption.
1 Nachricht wird an die durch den Zielparameter festgelegte E-Mail-Adresse gesendet. Der vierte Parameter extra_headers wird nur in diesem Typ verwendet.

2 ist keine Option mehr.

3 Die Nachricht wird an die Datei am Ziel gesendet. Die Zeichennachricht wird standardmäßig nicht als neue Zeile behandelt.
4 Nachrichten werden direkt an den Protokollhandler von SAPI gesendet

set_error_handler()

Legen Sie eine benutzerdefinierte Fehlerbehandlungsfunktion fest, um Fehler zu behandeln, die im Skript auftreten

gemischter set_error_handler ( callable $error_handler [, int $error_types = E_ALL | E_STRICT ] )

In error_types angegebene Fehlertypen umgehen den PHP-Standardfehlerhandler, es sei denn, die Rückruffunktion gibt FALSE zurück. Die Einstellung „error_reporting()“ hat keine Auswirkung und Ihr Fehlerhandler wird weiterhin aufgerufen. Es liegt in Ihrer Verantwortung, die() bei Bedarf zu verwenden.

HINWEIS

Die folgenden Fehlerstufen können nicht von benutzerdefinierten Funktionen behandelt werden: E_ERROR, E_PARSE, E_CORE_ERROR, E_CORE_WARNING, E_COMPILE_ERROR, E_COMPILE_WARNING und die meisten E_STRICT
, die in der Datei generiert werden, in der sich die Funktion set_error_handler() befindet aufgerufen.

error_handler


handler ( int $errorLevel , string $errorMessage [, string $errfile [, int $errline [, array $errcontext ]]] )

errcontext , Ja Ein Array, das auf die aktive Symboltabelle zeigt, als der Fehler auftrat. Das heißt, errcontext enthält ein Array aller Variablen in dem Bereich, in dem der Fehler ausgelöst wurde. Der Fehlerhandler des Benutzers sollte den Fehlerkontext nicht ändern.

set_Exception_handler

Legen Sie eine benutzerdefinierte Ausnahmebehandlungsfunktion fest

getMessage (), "n";}set_Exception_handler('Exception_handler');throw new Exception('Uncaught Exception');echo "Not Executedn";?>

register_shutdown_function

Diese Funktion ist eine Funktion, die nach dem Ende des Skripts ausgeführt wird (unabhängig davon, ob es normal endet oder durch Beenden oder Fehler endet).

Fehlerkonfiguration in php.ini

Zusammenfassung des PHP-Fehlermechanismus

error_reporting = E_ALL // Fehlerstufe melden, welche Stufe error_log = /tmp/php_errors.log // Speicherort der Fehleranzeige in PHP protokollieren display_errors = On // Ob Fehler in der Ausgabe angezeigt werden sollen, diese Ausgabe kann eine Seite sein, oder es kann sein: stdoutdisplay_startup_errors = On // Ob die Fehlerinformationen des Startvorgangs auf der Seite angezeigt werden sollen. Denken Sie daran, dass beim Start mehrere Fehler vom Typ Core auftreten . log_errors = On // Ob Fehlerprotokolle aufgezeichnet werden log_errors_max_len = 1024 // Maximale Länge des Fehlerprotokollsignore_repeated_errors = Off // Ob wiederholte Fehler ignoriert werden sollen track_errors = Off // Ob die globale Variable $php_errormsg zum Aufzeichnen des letzten Fehlers verwendet werden soll xmlrpc_errors = 0 //Ob das XML-RPC-Fehlermeldungsformat zum Aufzeichnen von Fehlern verwendet werden soll xmlrpc_error_number = 0 // Wird als Wert des XML-RPC-FaultCode-Elements verwendet. html_errors = On // Ob die Funktionen und andere Informationen in der Ausgabe in HTML-Links umgewandelt werden sollen docref_root = http://manual/en/ // Wenn html_errors aktiviert ist, was ist der Stammpfad dieses Links fastcgi.logging = 0 // Ob PHP-Fehler in fastcgi geworfen werden sollen

PHP verwendet standardmäßig das Protokoll und die Standardausgabe (im FPM-Modus ist die Standardausgabe die Seite)
Der Parameter von error_reporting ist die Fehlerstufe. Gibt an, welche Ebene einen Fehler auslösen soll
display_errors steuert, ob Fehlerinformationen auf der Standardausgabe angezeigt werden sollen
log_errors steuert, ob Fehlerinformationen im Protokoll aufgezeichnet werden sollen
error_log ist der Ort, an dem Fehlerprotokolle angezeigt werden

<br/>
Nach dem Login kopieren


Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Repo: Wie man Teamkollegen wiederbelebt
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Abenteuer: Wie man riesige Samen bekommt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Was ist der Fehlerbehandlungsmechanismus in PHP? Was ist der Fehlerbehandlungsmechanismus in PHP? May 12, 2023 pm 07:31 PM

PHP ist eine beliebte und leistungsstarke serverseitige Programmiersprache, mit der sich verschiedene Webanwendungen entwickeln lassen. Genau wie andere Programmiersprachen ist PHP anfällig für Fehler und Ausnahmen. Diese Fehler und Ausnahmen können verschiedene Ursachen haben, z. B. Programmfehler, Serverfehler, Benutzereingabefehler usw. Um die Laufstabilität und Zuverlässigkeit des Programms sicherzustellen, stellt PHP einen vollständigen Satz an Fehlerbehandlungsmechanismen bereit. Die Grundidee des PHP-Fehlerbehandlungsmechanismus ist: Wenn ein Fehler auftritt, stoppt das Programm die Ausführung und gibt eine Fehlermeldung aus. wir können

Umgang mit Syntaxfehlern in PHP Umgang mit Syntaxfehlern in PHP Aug 07, 2023 pm 04:46 PM

So gehen Sie mit Syntaxfehlern in PHP um. Einführung: Bei der Entwicklung von PHP-Programmen stoßen Sie häufig auf Syntaxfehler. Syntaxfehler werden durch Code verursacht, der gegen die PHP-Syntaxregeln verstößt, was dazu führt, dass das Skript nicht korrekt ausgeführt wird. In diesem Artikel werden einige Möglichkeiten zum Umgang mit PHP-Syntaxfehlern vorgestellt und entsprechende Codebeispiele bereitgestellt. Verwendung der Fehleraufforderungsfunktion PHP bietet eine umfangreiche Fehleraufforderungsfunktion. Diese Eingabeaufforderungen können während des Entwicklungsprozesses aktiviert werden, um Syntaxfehler rechtzeitig zu erkennen und zu beheben. Sie können den Fehler festlegen nach

Wie man mit PHP-Dateioperationsfehlern umgeht und entsprechende Fehlermeldungen generiert Wie man mit PHP-Dateioperationsfehlern umgeht und entsprechende Fehlermeldungen generiert Aug 08, 2023 am 10:30 AM

So gehen Sie mit PHP-Dateioperationsfehlern um und generieren entsprechende Fehlermeldungen. Wenn Sie PHP zum Ausführen von Dateioperationen verwenden, können verschiedene Fehler auftreten, z. B. Datei nicht gefunden, Berechtigungsfehler usw. Diese Fehler können dazu führen, dass das Programm nicht ordnungsgemäß ausgeführt wird. Daher ist es sehr wichtig, Dateioperationsfehler angemessen zu behandeln. In diesem Artikel erfahren Sie, wie Sie mit PHP-Dateioperationsfehlern umgehen und wie Sie entsprechende Fehlermeldungen generieren. 1. Fehlerbehandlungsmethode verwendet Fehlerkontrolloperator. PHP stellt den Fehlerkontrolloperator „@“ bereit, der vor der Ausführung von Anweisungen hinzugefügt werden kann, die Fehler verursachen können.

Wie man mit PHP-Dateipfadfehlern umgeht und entsprechende Fehlermeldungen generiert Wie man mit PHP-Dateipfadfehlern umgeht und entsprechende Fehlermeldungen generiert Aug 06, 2023 am 10:12 AM

Wie man mit PHP-Dateipfadfehlern umgeht und entsprechende Fehlermeldungen generiert Bei der Entwicklung und Wartung von PHP-Anwendungen treten häufig Dateipfadfehler auf. Wenn auf eine nicht vorhandene Datei verwiesen oder ein falscher Pfad angegeben wird, wird in PHP ein schwerwiegender Fehler ausgelöst, der dazu führt, dass die Anwendung nicht ordnungsgemäß ausgeführt wird. Um diese Situation besser zu debuggen und zu bewältigen, können wir PHP-Dateipfadfehler auf folgende Weise behandeln und entsprechende Fehlermeldungen generieren. Verwenden Sie absolute Pfade. Versuchen Sie beim Referenzieren von Dateien, absolute Pfade anstelle relativer Pfade zu verwenden.

Beheben Sie den PHP-Fehler: Aufruf einer undefinierten Klassenmethode Beheben Sie den PHP-Fehler: Aufruf einer undefinierten Klassenmethode Aug 18, 2023 pm 05:09 PM

Beheben von PHP-Fehlern: Aufruf undefinierter Klassenmethoden Während des PHP-Entwicklungsprozesses stoßen wir häufig auf Fehler beim Aufruf undefinierter Klassenmethoden. Diese Situation wird im Allgemeinen durch unregelmäßiges Schreiben von Code oder nicht vorhandene Klassenmethoden verursacht. Im Folgenden werden einige gängige Möglichkeiten zur Behebung dieses Problems beschrieben. Überprüfen Sie, ob die Klassenmethode vorhanden ist. Wenn Sie in einer Fehlermeldung darauf hingewiesen werden, dass eine nicht definierte Klassenmethode aufgerufen wird, prüfen Sie zunächst, ob die Methode in der entsprechenden Klasse vorhanden ist. Sie können überprüfen, ob eine Methode in einer Klasse vorhanden ist, indem Sie die Funktion method_exists() verwenden.

Wie gehe ich mit Fehlern bei der Entwicklung von PHP-Backend-Funktionen um? Wie gehe ich mit Fehlern bei der Entwicklung von PHP-Backend-Funktionen um? Aug 04, 2023 pm 01:19 PM

Wie gehe ich mit Fehlern bei der Entwicklung von PHP-Backend-Funktionen um? Als PHP-Backend-Entwickler stoßen wir während des Entwicklungsprozesses häufig auf verschiedene Fehler. Eine gute Fehlerbehandlung ist ein wichtiger Faktor für die Gewährleistung der Systemstabilität und des Benutzererlebnisses. In diesem Artikel werde ich einige Methoden und Techniken zur Fehlerbehandlung bei der Entwicklung von PHP-Backend-Funktionen vorstellen und entsprechende Codebeispiele bereitstellen. Festlegen der Fehlerberichtsebene PHP bietet einen Parameter für die Fehlerberichtsebene, der festgelegt werden kann, um die Art der zu meldenden Fehler zu definieren. Verwenden Sie error_repo

PHP-Fehlerbehandlung: Best Practices und Empfehlungen PHP-Fehlerbehandlung: Best Practices und Empfehlungen Aug 07, 2023 pm 12:25 PM

PHP-Fehlerbehandlung: Best Practices und Empfehlungen Die Fehlerbehandlung ist eine sehr wichtige Aufgabe beim Schreiben von PHP-Code. Wenn Fehler nicht korrekt behandelt werden, kann dies zu Schwachstellen und Sicherheitsproblemen in Ihrer Anwendung führen. Gleichzeitig trägt eine gute Fehlerbehandlung auch dazu bei, die Wartbarkeit und Skalierbarkeit des Codes zu verbessern. In diesem Artikel werden einige Best Practices und Empfehlungen für die PHP-Fehlerbehandlung vorgestellt und einige Codebeispiele bereitgestellt. Verwenden der Ausnahmebehandlung In PHP sind Ausnahmen ein Mechanismus zur Behandlung von Laufzeitfehlern. Durch die Verwendung von Ausnahmen können Fehler auftreten

PHP-Fehlerbehandlung und Ausnahmeprotokollierung in der Entwicklung kleiner Programme PHP-Fehlerbehandlung und Ausnahmeprotokollierung in der Entwicklung kleiner Programme Jul 04, 2023 am 11:16 AM

PHP-Fehlerbehandlung und Ausnahmeprotokollierung bei der Entwicklung von Miniprogrammen Da Miniprogramme immer beliebter werden, beginnen immer mehr Entwickler, die PHP-Sprache zur Entwicklung von Miniprogramm-Backends zu verwenden. Während der Entwicklung sind Fehlerbehandlung und Ausnahmeprotokollierung von entscheidender Bedeutung. In diesem Artikel wird der Umgang mit PHP-Fehlern und das Aufzeichnen von Ausnahmeprotokollen bei der Entwicklung kleiner Programme vorgestellt und entsprechende Codebeispiele gegeben. 1. PHP-Fehlerbehandlung Fehlerberichtseinstellungen In PHP können wir error_reporting und display_err ändern

See all articles