php 報錯等級

2021-09-25 02:40:09 字數 1671 閱讀 2089

定義和用法:

error_reporting() 設定 php 的報錯級別並返回當前級別。

函式語法:

error_reporting(report_level)

如果引數 level 未指定,當前報錯級別將被返回。下面幾項是 level 可能的值:

值     常量                  描述

1      e_error               致命的執行錯誤。錯誤無法恢復,暫停執行指令碼。

2      e_warning             執行時警告(非致命性錯誤)。非致命的執行錯誤,指令碼執行不會停止。

4      e_parse               編譯時解析錯誤。解析錯誤只由分析器產生。

8      e_notice              執行時提醒(這些經常是你**中的bug引起的,也可能是有意的行為造成的。)

16     e_core_error          php啟動時初始化過程中的致命錯誤。

32     e_core_warning        php啟動時初始化過程中的警告(非致命性錯)。

64     e_compile_error       編譯時致命性錯。這就像由zend指令碼引擎生成了乙個e_error。

128    e_compile_warning     編譯時警告(非致命性錯)。這就像由zend指令碼引擎生成了乙個e_warning警告。

256    e_user_error          使用者自定義的錯誤訊息。這就像由使用php函式trigger_error(程式設計師設定e_error)

512    e_user_warning        使用者自定義的警告訊息。這就像由使用php函式trigger_error(程式設計師設定的乙個e_warning警告)

1024   e_user_notice         使用者自定義的提醒訊息。這就像乙個由使用php函式trigger_error(程式設計師乙個e_notice集)

2048   e_strict              編碼標準化警告。允許php建議如何修改**以確保最佳的互操作性向前相容性。

4096   e_recoverable_error   開捕致命錯誤。這就像乙個e_error,但可以通過使用者定義的處理捕獲(又見set_error_handler())

8191   e_all                 所有的錯誤和警告(不包括 e_strict) (e_strict will be part of e_all as of php 6.0)

例子:任意數目的以上選項都可以用「或」來連線(用 or 或 |),這樣可以報告所有需要的各級別錯誤。

例如,下面的**關閉了使用者自定義的錯誤和警告,執行了某些操作,然後恢復到原始的報錯級別:

<?php

//禁用錯誤報告

error_reporting(0);

//報告執行時錯誤

error_reporting(e_error | e_warning | e_parse);

//報告所有錯誤

error_reporting(e_all);

?>

乙個簡單的例子是:

error_reporting(e_error | e_warning | e_parse | e_notice);

他表示php錯誤,警告,語法錯誤,提醒都返錯.

php 報錯等級

很多情況下,我們的php檔案會出現一些非常難以排查的錯誤,比如輸出大白頁,調錯無從下手。這是可能php的錯誤等級遮蔽了一些非致命的錯誤,造成沒有任何錯誤提示。所以了解和熟悉php錯誤等級,或許能夠成為調錯的新方法。php.ini中的錯誤報告等級預設情況下,php錯誤報告等級是e notice,e a...

PHP錯誤等級

f 很多情況下,我們的php檔案會出現一些非常難以排查的錯誤,比如輸出大白頁,調錯無從下手。這是可能php的錯誤等級遮蔽了一些非致命的錯誤,造成沒有任何錯誤提示。所以了解和熟悉php錯誤等級,或許能夠成為調錯的新方法。php.ini中的錯誤報告等級預設情況下,php錯誤報告等級是e notice,e...

php報錯和時間

錯誤處理 錯誤的分類 語法錯誤 這種錯誤最常見,但也最容易搞定 一旦出現,一行 都不執行 執行時錯誤 在頁面上給你報出來,有的會終止 執行,有的不會 邏輯錯誤 這種錯誤最麻煩 錯誤的級別 notice 提示級別,不會影響後續 的執行 如 輸出不存在的變數 warning 警告級別,也不會終止 執行 ...