首頁 >後端開發 >PHP問題 >php如何自訂錯誤處理

php如何自訂錯誤處理

王林
王林原創
2020-08-26 13:59:322363瀏覽

php自訂錯誤處理的方法:可以利用set_error_handler()函數來實作。此函數可以設定使用者定義的錯誤處理函數,例如【set_error_handler("my_define_error")】。

php如何自訂錯誤處理

自訂錯誤處理:

在錯誤發生時由我們自己來處理、設定一個錯誤處理的函數。

(影片教學推薦:php影片教學

set_error_handler() 函數設定使用者定義的錯誤處理函數。

語法:

set_error_handler(errorhandler,E_ALL|E_STRICT);

參數:

  • errorhandler    必要。規定使用者錯誤處理函數的名稱。   

  • E_ALL|E_STRICT    可選。規定顯示何種錯誤報告等級的使用者定義錯誤。預設是 "E_ALL"。   

例如:set_error_handler(“my_define_error”);

然後定義函數,在函數中詳細設定錯誤的處理情況。

語法:

function my_define_error(errCode,errCode,errCode,errMsg,errFile,errFile,errFile,errLine){
    函数内部写入处理错误的代码
}

(相關教學建議:php圖文教學

注意:此形參的順序是規定的,而且是由系統會統一呼叫的函數,並傳輸實際參數資料。

注意:自訂錯誤只能處理“非致命錯誤”,也就是說無法處理E_ERROR錯誤。

程式碼實作:

<?php // 用户定义的错误处理函数
 function myErrorHandler($errno, $errstr, $errfile, $errline) {
     echo "<b>Custom error:</b> [$errno] $errstr<br>";
     echo " Error on line $errline in $errfile<br>";
 } // 设置用户定义的错误处理函数
 set_error_handler("myErrorHandler");

 $test=2; // 触发错误
 if ($test>1) {
     trigger_error("A custom error has been triggered");
 }
 ?>

輸出結果:

Custom error: [1024] A custom error has been triggered
 Error on line 14 in C:\webfolder\test.php

以上是php如何自訂錯誤處理的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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