Heim  >  Artikel  >  Backend-Entwicklung  >  Welche drei Arten von Fehlerberichtsebenen gibt es in PHP?

Welche drei Arten von Fehlerberichtsebenen gibt es in PHP?

青灯夜游
青灯夜游Original
2020-09-29 10:17:242418Durchsuche

Die drei Fehlermeldeebenen von PHP sind: 1. Syntaxfehler; verhindert die Ausführung des Skripts. 2. Laufzeitfehler; im Allgemeinen wird die Ausführung des PHP-Skripts nicht verhindert, aber es wird verhindert, dass die aktuelle Aktion ausgeführt wird, und es wird ein Fehler ausgegeben, das PHP-Skript wird jedoch weiterhin ausgeführt. 3. Logikfehler; verhindert weder die Ausführung des Skripts noch gibt es eine Fehlermeldung aus.

Welche drei Arten von Fehlerberichtsebenen gibt es in PHP?

Empfohlen: „PHP-Video-Tutorial

1. PHP-Programmfehler fallen im Allgemeinen in die folgenden drei Bereiche

1. Syntaxfehler

Syntaxfehler sind die häufigsten und am einfachsten zu behebenden Fehler, z as: Ein fehlendes Semikolon im Code verhindert die Ausführung des Skripts.

2. Laufzeitfehler:

Diese Art von Fehler verhindert im Allgemeinen nicht die Ausführung des PHP-Skripts, sondern verhindert, dass die aktuelle Aktion ausgeführt wird, und gibt einen Fehler aus, das PHP-Skript wird jedoch weiterhin ausgeführt.

3. Logikfehler:

Dieser Fehlertyp ist am problematischsten. Er verhindert weder die Ausführung des Skripts noch gibt er eine Fehlermeldung aus.

2. PHP-Fehlermeldestufe

   级别常量    错误值    错误报告描述
   E_ERROR 1  致命的运行时错误(阻止脚本执行)
   E_WARNING   2  运行时警告(非致命性错误)
   E_PARSE 4  从语法中解析错误
   E_NOTICE    8  运行时注意消息(可能是或可能不是一个问题)
   E_CORE_ERROR    16 PHP启动时初始化过程中的致命错误
   E_CORE_WARNING  32 PHP启动时初始化过程中的警告(非致命性错)
   E_COMPILE_ERROR 64 编译时致命性错
   E_COMPILE_WARNING   128    编译时警告(非致命性错)
   E_USER_ERROR    256    用户自定义的致命错误
   E_USER_WARNING  512    用户自定义的警告(非致命性错误)
   E_USER_NOTICE   1024   用户自定义的提醒(经常是bug)
   E_STRICT    2048   编码标准化警告(建议如何修改以向前兼容)
   E_ALL   6143   所有的错误、警告和注意信息

3. Passen Sie die Fehlermeldestufe an

1. display_errors: Ob die Stufe der PHP-Ausgabefehlermeldung aktiviert werden soll.
Werte sind: Ein (Standardausgabefehlerbericht), Aus (alle Fehlermeldungen abschirmen)
– Die Funktion ini_set() kann im PHP-Skript aufgerufen werden, um die Konfigurationsdatei php.ini dynamisch festzulegen.
-- Zum Beispiel: ini_set("display_errors", "On"); zeigt alle Fehlermeldungen an

2. Legt verschiedene Fehlerstufenberichte fest
error_reporting = E_ALL & ~E_NOTICE
-- kann alle unbemerkten Fehler auslösen Error
error_reporting = E_ERROR |. E_PARSE |. E_CORE_ERROR
– Es werden nur schwerwiegende Laufzeitfehler, neue Parsing-Fehler und Kernfehler berücksichtigt.
error_reporting = E_ALL & ~(E_USER_ERROR | E_USER_WARNING | E_USER_NOTICE)
– Alle Fehler außer vom Benutzer verursachten Fehlern melden.
Im PHP-Skript kann die Fehlerberichtsebene dynamisch über die Funktion error_reporting() festgelegt werden.
Zum Beispiel: error_reporting(E_ALL);

4. Codetests

<html>
    <head><title>测试错误报告</title></head>
    <body>
        <h2>测试错误报告</h2>
        <?php
            /*开启php.ini中的display_errors指令,只有该指令开启如果有错误报告才输出*/
            ini_set(&#39;display_errors&#39;, 1);  
            /*通过error_reporting()函数设置在本脚本中,输出所有级别的错误报告*/
            error_reporting( E_ALL );
            /*“注意(notice)”的报告,不会阻止脚本的执行,并且可能不一定是一个问题 */
            getType( $var );             //调用函数时提供的参数变量没有在之前声明
            /*“警告(warning)”的报告,指示一个问题,但是不会阻止脚本的执行 */
            getType();                      //调用函数时没有提供必要的参数
            /*“错误(error)”的报告,它会终止程序,脚本不会再向下执行 */
            get_Type();                     //调用一个没有被定义的函数
        ?>
    </body>
</html>

Verwandte Empfehlungen: php-Training

Das obige ist der detaillierte Inhalt vonWelche drei Arten von Fehlerberichtsebenen gibt es 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