Heim  >  Artikel  >  Backend-Entwicklung  >  So ändern Sie die Fehlerstufe in PHP

So ändern Sie die Fehlerstufe in PHP

青灯夜游
青灯夜游Original
2021-05-25 17:41:442808Durchsuche

Änderungsmethode: 1. Suchen und ändern Sie in php.ini den Wert des Elements „error_reporting“ und starten Sie dann den Webserver neu. 2. Verwenden Sie in der PHP-Datei die Anweisung „error_reporting(level)“, um den Parameter „level“ zu ändern.

So ändern Sie die Fehlerstufe in PHP

Die Betriebsumgebung dieses Tutorials: Windows 7-System, PHP-Version 7.1, DELL G3-Computer

Fehlerberichtsebene: Gibt an, unter welchen Umständen Fehler im Skriptcode auftreten (Fehler sind hier allgemeine Fehler, einschließlich E_NOTICE, E_WARNING , E_ERROR schwerwiegender Fehler usw.) werden in Form von Fehlerberichten ausgegeben.

So ändern Sie die Fehlerberichtsebene in PHP

1. Ändern Sie die PHP-Konfigurationsdatei php.ini

Nachdem Sie error_reporting auf diese Weise eingestellt haben, starten Sie den Webserver neu und es wird dauerhaft wirksam.

Öffnen Sie am Beispiel des integrierten Softwarepakets xampp die Konfigurationsdatei php.ini und überprüfen Sie den Standardwert der Fehlerberichtsebene error_reporting wie folgt:

error_reporting=E_ALL & ~E_DEPRECATED & ~E_STRICT

bedeutet, dass alle Fehler gemeldet werden, außer E_DEPRECATED und E_STRICT.

Ändern Sie es in:

error_reporting=E_ALL &  ~E_NOTICE

Es bedeutet, dass alle Fehler außer E_NOTICE gemeldet werden. Dies ist auch die am häufigsten verwendete Fehlerberichtsebene. Es werden keine Fehler der Aufmerksamkeitsklasse gemeldet (z. B. die Verwendung einer undefinierten Variablen).

Speichern und es wird nach dem Neustart des Webservers wirksam.

2. Verwenden Sie die Funktion error_reporting()

Nach dieser Einstellung kann sie sofort wirksam werden. Allerdings nur im Bereich nach dem Funktionsaufruf error_reporting() im aktuellen Skript.

error_reporting(level)

Der Level-Parameter gibt die Fehlerberichtsebene des aktuellen Skripts an und kann weggelassen werden. Sowohl Wertnummern als auch Konstantennamen sind akzeptabel. Aus Kompatibilitätsgründen mit zukünftigen PHP-Versionen wird jedoch die Verwendung von Konstantennamen empfohlen.

Der Ebenenparameter kann eine Ganzzahl oder der entsprechende Konstantenbezeichner sein. Es wird empfohlen, die Konstantenform zu verwenden. Der Rückgabewert ist der Wert (Ganzzahlwert) der am aktuellen Standort gültigen Fehlermeldeebene.

Hier sind einige Fehlermeldestufen:

Wert Konstante Beschreibung
1 E_ERROR Schwerwiegender Fehler zur Laufzeit. Nicht behebbare Fehler. Stoppen Sie die Ausführung des Skripts.
2 E_WARNING Nicht schwerwiegender Laufzeitfehler. Die Skriptausführung wird nicht gestoppt.
4 E_PARSE Parse-Fehler während der Kompilierung. Parsing-Fehler sollten nur vom Parser generiert werden.
8 E_NOTICE Laufzeitbenachrichtigung. Die Skripterkennung kann ein Fehler sein, kann aber auch beim normalen Ausführen eines Skripts auftreten.
16 E_CORE_ERROR Schwerwiegender Fehler beim Starten von PHP. Dies ist genau wie E_ERROR des PHP-Kerns.
32 E_CORE_WARNING Nicht schwerwiegender Fehler beim PHP-Start. Dies ist genau wie die E_WARNING des PHP-Kerns.
64 E_COMPILE_ERROR Schwerwiegender Fehler beim Kompilieren. Dies ist genau wie der E_ERROR, der von der Zend-Skript-Engine generiert wird.
128 E_COMPILE_WARNING Nicht schwerwiegender Fehler beim Kompilieren. Dies ist wie eine E_WARNING, die von der Zend-Skript-Engine generiert wird.
256 E_USER_ERROR Vom Benutzer generierter schwerwiegender Fehler. Dies ähnelt dem E_ERROR, der vom Programmierer mit der PHP-Funktion trigger_error() generiert wird.
512 E_USER_WARNING Vom Benutzer generierter, nicht schwerwiegender Fehler. Dies ist wie eine E_WARNING, die vom Programmierer mit der PHP-Funktion trigger_error() generiert wird.
1024 E_USER_NOTICE Benutzergenerierte Benachrichtigungen. Dies ähnelt der E_NOTICE, die der Programmierer mit der PHP-Funktion trigger_error() generiert.
2048 E_STRICT Benachrichtigung beim Laufen. PHP empfiehlt, dass Sie Änderungen an Ihrem Code vornehmen, um die Interoperabilität und Kompatibilität des Codes zu verbessern.
4096 E_RECOVERABLE_ERROR Abfangbarer schwerwiegender Fehler. Dies ist wie ein E_ERROR, der von einem benutzerdefinierten Handle abgefangen werden kann (siehe set_error_handler()).
8191 E_ALL Alle Fehler- und Warnstufen außer E_STRICT (seit PHP 6.0 wird E_STRICT Teil von E_ALL sein).

示例:

error_reporting(E_ALL ^ E_NOTICE);    // 除了E_NOTICE之外,报告所有的错误
error_reporting(E_ERROR);       // 只报告致命错误
echo error_reporting(E_ERROR | E_WARNING | E_NOTICE);   // 只报告E_ERROR、E_WARNING 和 E_NOTICE三种错误

注意:配置文件php.ini中display_errors的默认值为On,代表显示错误提示,如果设置为Off,就会关闭所有的错误提示。

使用 error_reporting(0) 或者在函数前面加 @,可以抑制错误输出,以防止错误消息泄露敏感信息。 

推荐学习:《PHP视频教程

Das obige ist der detaillierte Inhalt vonSo ändern Sie die Fehlerstufe in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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