PHP Error 和 Logging 函數(shù)-7.5PHP 參考手冊
閱讀 ?·? 發(fā)布日期 2019-06-29 08:38 ?·? adminPHP Error 簡介
Error 和 Logging 函數(shù)允許您對錯誤進行處理和記錄。
Error 函數(shù)允許用戶定義錯誤處理規(guī)則,并修改記錄錯誤的方式。
Logging 函數(shù)允許用戶對應(yīng)用程序進行日志記錄,并把日志消息發(fā)送到電子郵件、系統(tǒng)日志或其他的機器。
error 函數(shù)用于完成錯誤處理和日志記錄。
error 函數(shù)允許我們定義自己的錯誤處理規(guī)則,并修改錯誤記錄方式。
logging 函數(shù)允許我們將消息直接發(fā)送到其他機器、電郵或系統(tǒng)日志。
error reporting 函數(shù)允許我們錯誤的類型和層級。
安裝
PHP error 函數(shù)是 PHP 核心的一部分。無需安裝即可使用這些函數(shù)。
Runtime 配置
error 函數(shù)的行為受到 php.ini 中設(shè)置的影響。
Errors 和 logging 配置選項如下:
名稱 | 默認(rèn)值 | 描述 | 可修改范圍 |
---|---|---|---|
error_reporting | NULL | 設(shè)置錯誤報告級別(整數(shù)或命名常量) | PHP_INI_ALL |
display_errors | "1" |
規(guī)定是否將錯誤作為輸出輸出到屏幕,或者對用戶隱藏。 注意:該特性不應(yīng)在生產(chǎn)系統(tǒng)上使用(僅支持開發(fā)) |
PHP_INI_ALL |
display_startup_errors | "0" |
即使 display_errors 設(shè)置為開啟, PHP 啟動過程中的錯誤信息也不會被顯示。 注釋:強烈建議除了調(diào)試目的以外,將 display_startup_errors 設(shè)置為關(guān)閉。 |
PHP_INI_ALL |
log_errors | "0" |
設(shè)置是否將腳本運行的錯誤信息記錄到服務(wù)器錯誤日志或者 error_log 之中。 注釋:這是與服務(wù)器相關(guān)的特定配置項。 注釋:在生產(chǎn)系統(tǒng)中,強烈建議你使用錯誤日志記錄web站點上顯示的錯誤信息。 |
PHP_INI_ALL |
log_errors_max_len | "1024" |
設(shè)置 log_errors 的最大字節(jié)數(shù)。在 error_log 會添加有關(guān)錯誤源的信息。 默認(rèn)值為 1024,如果設(shè)置為 0 表示不限長度。 該長度設(shè)置對記錄的錯誤,顯示的錯誤,以及 $php_errormsg 都會有限制作用。 |
PHP_INI_ALL |
ignore_repeated_errors | "0" |
規(guī)定是否記錄重復(fù)的錯誤信息。 重復(fù)的錯誤必須出現(xiàn)在同一個文件中的同一行代碼上,除非 ignore_repeated_source 設(shè)置為 true。 |
PHP_INI_ALL |
ignore_repeated_source | "0" |
規(guī)定是否記錄重復(fù)的錯誤信息。忽略重復(fù)消息時,也忽略消息的來源。 當(dāng)該設(shè)置開啟時,重復(fù)信息將不會記錄它是由不同的文件還是不同的源代碼行產(chǎn)生的。 |
PHP_INI_ALL |
report_memleaks | "1" | 如果該參數(shù)被設(shè)置為 On(默認(rèn)),則會顯示由 Zend 內(nèi)存管理器偵測到的內(nèi)存泄露報告。 | PHP_INI_ALL |
track_errors | "0" | 如果開啟,最后一個錯誤將永遠(yuǎn)存在于變量 $php_errormsg 中。 | PHP_INI_ALL |
html_errors | "1" | 在錯誤信息中關(guān)閉 HTML 標(biāo)簽。 |
|
xmlrpc_errors | "0" | 如果啟用,則關(guān)閉正常的錯誤報告,并將錯誤的格式設(shè)置為 XML-RPC 錯誤信息的格式。 | PHP_INI_SYSTEM |
xmlrpc_error_number | "0" | 用作 XML-RPC faultCode 元素的值。 | PHP_INI_ALL |
docref_root | "" | (available since PHP 4.3) | PHP_INI_ALL |
docref_ext | "" | (available since PHP 4.3.2) | PHP_INI_ALL |
error_prepend_string | NULL | 規(guī)定錯誤信息之前輸出的字符串。 | PHP_INI_ALL |
error_append_string | NULL | 規(guī)定錯誤信息之后輸出的字符串。 | PHP_INI_ALL |
error_log | NULL |
設(shè)置腳本錯誤將被記錄到的文件。該文件必須是 web 服務(wù)器用戶可寫的。 如果使用了特殊值 syslog,則將錯誤信息發(fā)送到系統(tǒng)日志記錄器。 |
PHP_INI_ALL |
PHP Error 和 Logging 函數(shù)
函數(shù) | 描述 |
---|---|
debug_backtrace() | 生成 backtrace。 |
debug_print_backtrace() | 打印 backtrace。 |
error_get_last() | 返回最后發(fā)生的錯誤。 |
error_log() | 向服務(wù)器錯誤記錄、文件或遠(yuǎn)程目標(biāo)發(fā)送錯誤消息。 |
error_reporting() | 規(guī)定報告哪個錯誤。 |
restore_error_handler() | 恢復(fù)之前的錯誤處理程序。 |
restore_exception_handler() | 恢復(fù)之前的異常處理程序。 |
set_error_handler() | 設(shè)置用戶自定義的錯誤處理函數(shù)。 |
set_exception_handler() | 設(shè)置用戶自定義的異常處理函數(shù)。 |
trigger_error() | 創(chuàng)建用戶級別的錯誤消息。 |
user_error() | trigger_error() 的別名。 |
PHP 5 預(yù)定義錯誤和日志常量
值 | 常量 | 描述 |
---|---|---|
1 | E_ERROR | 運行時致命的錯誤。不能修復(fù)的錯誤。終止執(zhí)行腳本。 |
2 | E_WARNING | 運行時非致命的錯誤。不終止執(zhí)行腳本。 |
4 | E_PARSE | 編譯時語法解析錯誤。解析錯誤僅僅由分析器產(chǎn)生。 |
8 | E_NOTICE | 運行時通知。表示腳本遇到可能會表現(xiàn)為錯誤的情況,但是在可以正常運行的腳本里面也可能會有類似的通知。 |
16 | E_CORE_ERROR | 在 PHP 初始化啟動過程中發(fā)生的致命錯誤。該錯誤類似 E_ERROR,但是是由 PHP 引擎核心產(chǎn)生的。 |
32 | E_CORE_WARNING | PHP 初始化啟動過程中發(fā)生的警告 (非致命錯誤) 。類似 E_WARNING,但是是由 PHP 引擎核心產(chǎn)生的。 |
64 | E_COMPILE_ERROR | 致命編譯時錯誤。類似 E_ERROR, 但是是由 Zend 腳本引擎產(chǎn)生的。 |
128 | E_COMPILE_WARNING | 編譯時警告 (非致命錯誤)。類似 E_WARNING,但是是由 Zend 腳本引擎產(chǎn)生的。 |
256 | E_USER_ERROR | 用戶產(chǎn)生的錯誤信息。類似 E_ERROR, 但是是由用戶自己在代碼中使用PHP函數(shù) trigger_error()來產(chǎn)生的。 |
512 | E_USER_WARNING | 用戶產(chǎn)生的警告信息。類似 E_WARNING, 但是是由用戶自己在代碼中使用 PHP 函數(shù) trigger_error() 來產(chǎn)生的。 |
1024 | E_USER_NOTICE | 用戶產(chǎn)生的通知信息。類似 E_NOTICE, 但是是由用戶自己在代碼中使用 PHP 函數(shù) trigger_error() 來產(chǎn)生的。 |
2048 | E_STRICT | 啟用 PHP 對代碼的修改建議,以確保代碼具有最佳的互操作性和向前兼容性。 |
4096 | E_RECOVERABLE_ERROR | 可被捕捉的致命錯誤。它表示發(fā)生了一個可能非常危險的錯誤,但是還沒有導(dǎo)致 PHP 引擎處于不穩(wěn)定的狀態(tài)。 如果該錯誤沒有被用戶自定義句柄捕獲 (參見 set_error_handler()),將成為一個 E_ERROR 從而腳本會終止運行。 |
8192 | E_DEPRECATED | 運行時通知。啟用后將會對在未來版本中可能無法正常工作的代碼給出警告。 |
16384 | E_USER_DEPRECATED | 用戶產(chǎn)生的警告信息。類似 E_DEPRECATED, 但是是由用戶自己在代碼中使用 PHP 函數(shù) trigger_error() 來產(chǎn)生的。 |
32767 | E_ALL | E_STRICT 除非的所有錯誤和警告信息。 |
為您推薦
- 襯塑管網(wǎng)站建設(shè)_網(wǎng)頁定制制作與開發(fā) 2020-01-12
- 保溫管網(wǎng)站建設(shè)_網(wǎng)頁定制制作與開發(fā) 2020-01-12
- 玻璃管網(wǎng)站建設(shè)_網(wǎng)頁定制制作與開發(fā) 2020-01-12
- 鍍鋅方矩管網(wǎng)站建設(shè)_網(wǎng)頁定制制作與 2020-01-12
- PVC管材網(wǎng)站建設(shè)_網(wǎng)頁定制制作與開發(fā) 2020-01-12