首頁  >  文章  >  後端開發  >  php三個錯誤報告等級類型是什麼?

php三個錯誤報告等級類型是什麼?

青灯夜游
青灯夜游原創
2020-09-29 10:17:242328瀏覽

php三個錯誤報告層級類型是:1、語法錯誤;會阻止腳本的執行。 2.執行時間的錯誤;一般不會阻止php腳本的執行,但會阻止目前要做的事情,輸出一個錯誤,但php腳本會繼續執行。 3、邏輯錯誤;既不阻止腳本的執行,也不輸出錯誤訊息。

php三個錯誤報告等級類型是什麼?

推薦:《PHP影片教學

 一、php程式的錯誤發生一般歸屬下面3個領域

1、語法錯誤

  語法錯誤最常見,也容易修復,如:程式碼中遺漏一個分號,這類錯誤會阻止腳本的執行。
 
2、執行階段的錯誤:

   這種錯誤通常不會阻止php腳本的執行,但會阻止目前要做的事情,輸出一個錯誤,但php腳本會繼續執行。

3、邏輯錯誤:

   這種錯誤最麻煩,既不阻止腳本的執行,也不輸出錯誤訊息。

    二、php的錯誤錯誤等級

   级别常量    错误值    错误报告描述
   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   所有的错误、警告和注意信息

  三、調整錯誤報告等級

1、display_errors:是否開啟php輸出錯誤報告的級別。
值為:On (預設的輸出錯誤報告)、Off (屏蔽所有的錯誤訊息)
-- 在php腳本中可以呼叫ini_set( ) 函數,動態設定php.ini設定檔。
-- 如:ini_set("display_errors", "On"); 顯示所有的錯誤訊息

2、error_reporting: 設定不同的錯誤等級報告
   error_reporting = E_ALL & ~E_NOTICE
     -- 可以拋出任何非注意力的錯誤
   error_reporting = E_ERROR | E_PARSE | E_CORE_ERROR
     -- 只考慮致命的執行階段錯誤,​​新解析錯誤和核心錯誤。
   error_reporting = E_ALL & ~(E_USER_ERROR | E_USER_WARNING | E_USER_NOTICE)
     -- 報告使用者導致的錯誤以外的所有錯誤。
   在php腳本可以透過error_reporting() 函數動態設定錯誤報告層級。
   如:error_reporting(E_ALL);

# 四、程式碼測試

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

相關推薦:php訓練

#

以上是php三個錯誤報告等級類型是什麼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn