這些是處理錯(cuò)誤處理和日志記錄的函數(shù)。它們使您可以定義自己的錯(cuò)誤處理規(guī)則,以及修改錯(cuò)誤記錄方式。這使您可以更改和增強(qiáng)錯(cuò)誤報(bào)告以適合您的需求。
使用這些日志記錄函數(shù),您可以將消息直接發(fā)送到其他計(jì)算機(jī),電子郵件,系統(tǒng)日志等,因此您可以有選擇地記錄和監(jiān)視應(yīng)用程序和網(wǎng)站的最重要部分。
錯(cuò)誤和日志記錄函數(shù)是PHP核心的一部分。無(wú)需安裝即可使用這些函數(shù)。
這些函數(shù)的行為受php.ini中的設(shè)置影響。這些設(shè)置在下面定義。
| 名稱(chēng) | 默認(rèn) | 變更日志 |
|---|---|---|
| error_reporting | NULL | |
| display_errors | "1" | |
| display_startup_errors | "0" | 自PHP 4.0.3起可用。 |
| log_errors | "0" | |
| log_errors_max_len | "1024" | 自PHP 4.3.0起可用。 |
| ignore_repeated_errors | "0" | 自PHP 4.3.0起可用。 |
| ignore_repeated_source | "0" | 自PHP 4.3.0起可用。 |
| report_memleaks | "1" | 自PHP 4.3.0起可用。 |
| track_errors | "0" | |
| html_errors | "1" | PHP <= 4.2.3中的PHP_INI_SYSTEM 自PHP 4.0.2起可用。 |
| docref_root | "" | 自PHP 4.3.0起可用。 |
| docref_ext | "" | 自PHP 4.3.2起可用。 |
| error_prepend_string | NULL | |
| error_append_string | NULL | |
| error_log | NULL | |
| warn_plus_overloading | NULL | 自PHP 4.0.0起該選項(xiàng)不再可用 |
版本-表示支持常量的PHP的最早版本。
您可以在配置php.ini文件時(shí)使用任何常量。
| 值 | 常量和說(shuō)明 | 版本 |
|---|---|---|
| 1 | E_ERROR 致命的運(yùn)行時(shí)錯(cuò)誤。無(wú)法修復(fù)的錯(cuò)誤。腳本的執(zhí)行被暫停 | |
| 2 | E_WARNING 非致命的運(yùn)行時(shí)錯(cuò)誤。腳本的執(zhí)行不會(huì)停止 | |
| 4 | E_PARSE 編譯時(shí)解析錯(cuò)誤。解析錯(cuò)誤應(yīng)僅由解析器生成 | |
| 8 | E_NOTICE 運(yùn)行時(shí)通知。該腳本發(fā)現(xiàn)了可能是錯(cuò)誤的內(nèi)容,但在正常運(yùn)行腳本時(shí)也可能發(fā)生 | |
| 16 | E_CORE_ERROR PHP啟動(dòng)時(shí)發(fā)生致命錯(cuò)誤。這就如同PHP核心中的 E_ERROR | 4 |
| 32 | E_CORE_WARNING PHP啟動(dòng)時(shí)發(fā)生非致命錯(cuò)誤。這就如同PHP核心中的 E_WARNING | 4 |
| 64 | E_COMPILE_ERROR 致命的編譯時(shí)錯(cuò)誤。這就如同Zend腳本引擎生成的 E_ERROR | 4 |
| 128 | E_COMPILE_WARNING 非致命的編譯時(shí)錯(cuò)誤。這就如同Zend腳本引擎生成的 E_WARNING | 4 |
| 256 | E_USER_ERROR 用戶(hù)生成的致命錯(cuò)誤。就像程序員使用PHP函數(shù) trigger_error() 設(shè)置的 E_ERROR 一樣 | 4 |
| 512 | E_USER_WARNING 非致命的用戶(hù)生成的警告。這就如同程序員使用PHP函數(shù) trigger_error() 設(shè)置的 E_WARNING 一樣 | 4 |
| 1024 | E_USER_NOTICE 用戶(hù)生成的通知。就像程序員使用PHP函數(shù) trigger_error() 設(shè)置的 E_NOTICE 一樣 | 4 |
| 2048 | E_STRICT 運(yùn)行時(shí)通知。PHP建議對(duì)您的代碼進(jìn)行更改以幫助代碼的互操作性和兼容性 | 5 |
| 4096 | E_RECOVERABLE_ERROR 可捕獲的致命錯(cuò)誤。這就如同一個(gè) E_ERROR,但是可以由用戶(hù)定義的句柄捕獲(另請(qǐng)參見(jiàn) set_error_handler() ) | 5 |
| 8191 | E_ALL 除 E_STRICT 級(jí)別外的所有錯(cuò)誤和警告 | 5 |
P版本-表示支持該函數(shù)的PHP的最早版本。
| 序號(hào) | 函數(shù) | 描述 | 版本 |
|---|---|---|---|
| 1 | debug_backtrace() | 生成 backtrace | 4 |
| 2 | debug_print_backtrace() | 打印 backtrace | 5 |
| 3 | error_get_last() | 獲取最后發(fā)生的錯(cuò)誤 | 5 |
| 4 | error_log() | 將錯(cuò)誤發(fā)送到服務(wù)器錯(cuò)誤日志,文件或遠(yuǎn)程目標(biāo) | 4 |
| 5 | error_reporting() | 指定報(bào)告哪些錯(cuò)誤 | 4 |
| 6 | restore_error_handler() | 恢復(fù)先前的錯(cuò)誤處理程序 | 4 |
| 7 | restore_exception_handler() | 恢復(fù)先前的異常處理程序 | 5 |
| 8 | set_error_handler() | 設(shè)置用戶(hù)定義的函數(shù)來(lái)處理錯(cuò)誤 | 4 |
| 9 | set_exception_handler() | 設(shè)置用戶(hù)定義的函數(shù)來(lái)處理異常 | 5 |
| 10 | trigger_error() | 創(chuàng)建用戶(hù)定義的錯(cuò)誤消息 | 4 |
| 11 | user_error() | trigger_error()的別名 | 4 |