PHP set_error_handler() 函數
轉自 : http://www.w3school.com.cn/php/func_error_set_error_handler.asp
定義和用法
set_error_handler() 函數設置用戶自定義的錯誤處理函數。
該函數用於創建運行時期間的用戶自己的錯誤處理方法。
該函數會返回舊的錯誤處理程序,若失敗,則返回 null。
語法
set_error_handler(error_function,error_types)
參數 | 描述 |
---|---|
error_function | 必需。規定發生錯誤時運行的函數。 |
error_types | 可選。規定在哪個錯誤報告級別會顯示用戶定義的錯誤。默認是 "E_ALL"。 |
提示和註釋
提示:如果使用了該函數,會完全繞過標準的 PHP 錯誤處理函數,如果必要,用戶定義的錯誤處理程序必須終止 (die() ) 腳本。
註釋:如果在腳本執行前發生錯誤,由於在那時自定義程序還沒有註冊,因此就不會用到這個自定義錯誤處理程序。
例子
<?php //error handler function function customError($errno, $errstr, $errfile, $errline) { echo "<b>Custom error:</b> [$errno] $errstr<br />"; echo " Error on line $errline in $errfile<br />"; echo "Ending Script"; die(); } //set error handler set_error_handler("customError"); $test=2; //trigger error if ($test>1) { trigger_error("A custom error has been triggered"); } ?>
輸出:
Custom error: [1024] A custom error has been triggered Error on line 19 in C:/webfolder/test.php Ending Script