西西軟件下載最安全的下載網(wǎng)站、值得信賴的軟件下載站!

首頁(yè)編程開發(fā)php教程 → PHP 的錯(cuò)誤、異常等級(jí)常量表,異常處理及錯(cuò)誤回調(diào)函數(shù)

PHP 的錯(cuò)誤、異常等級(jí)常量表,異常處理及錯(cuò)誤回調(diào)函數(shù)

相關(guān)軟件相關(guān)文章發(fā)表評(píng)論 來(lái)源:西西整理時(shí)間:2012/12/5 11:20:56字體大。A-A+

作者:ecalf點(diǎn)擊:0次評(píng)論:0次標(biāo)簽: 異常處理

3 頁(yè) Exception 異常的回調(diào)函數(shù)

三 、 Exception 異常的回調(diào)函數(shù)

set_exception_handler(callback functionName)  //發(fā)生 Exception 或其 子類的 異常是會(huì)調(diào)用此函數(shù)

function exceptionHandlerFun($errObj){  // Exception 異常的回調(diào)函數(shù) 只有一個(gè)參數(shù),就是拋出的異常對(duì)象。

//.......

}

 Exception 異常的回調(diào)函數(shù)并不能像  set_error_handler 的回調(diào)函數(shù)那樣通過(guò)返回 true 來(lái)使異常被消除,即使回調(diào)函數(shù)處理了異常,后繼代碼也不會(huì)被繼續(xù)執(zhí)行,因此想繼續(xù)執(zhí)行后續(xù)代碼必須使用 try-catch。

但是有一個(gè)例外:腳本結(jié)束回調(diào)函數(shù)可以被執(zhí)行,拋出的異常即使沒有被處理,該回調(diào)函數(shù)也是能被執(zhí)行的。

register_shutdown_function(callback functionName[,argument1,argument2,...]);

例如:

function shutdownfunction(){

    echo 'script is end';

}

register_shutdown_function("shutdownfunction");

因?yàn)?nbsp;shutdownfunction() 在腳本結(jié)束時(shí)被執(zhí)行,所以 這個(gè)回調(diào)函數(shù)之內(nèi)可以調(diào)用腳本中任意位置的函數(shù),即使該函數(shù)定義在 錯(cuò)誤拋出位置之后(函數(shù)定義是在 腳本編譯期完成的)。

四、trigger_error(string errorMsg[,int user_error_type]) 

 該函數(shù)用于主動(dòng)觸發(fā)一個(gè)錯(cuò)誤: user_error_type 只能是 E_ALL、E_USER_ERROR、 E_USER_WARNING、 E_USER_NOTICE 或其組合的值。

set_error_handler(callbeck functionName[,user_error_type]); // 為 trigger_error() 設(shè)置一個(gè)回調(diào)函數(shù)來(lái)處理錯(cuò)誤,包括系統(tǒng)拋出的錯(cuò)誤和用戶使用 trigger_error() 函數(shù)觸發(fā)的錯(cuò)誤。

可選參數(shù) user_error_type :

如果設(shè)定此參數(shù),則 trigger_error 拋出的錯(cuò)誤類型符合 在user_error_type 的定義范圍才能觸發(fā)回調(diào)函數(shù)。

這個(gè)值的設(shè)置類似于 error_reporting() 函數(shù) 。

第一個(gè)參數(shù)(callbeck functionName):

一個(gè)函數(shù)名,該函數(shù) 可以有 5 個(gè)參數(shù),其中前 2 個(gè)必選,依次是:

trigger_error 拋出的 user_error_type、trigger_error 拋出的 errorMsg、拋出錯(cuò)誤的文件的絕對(duì)路勁、拋出錯(cuò)誤的行號(hào)、拋出錯(cuò)誤時(shí)的上下文環(huán)境 (一個(gè)數(shù)組,包含了trigger_error() 所在作用域內(nèi)的所有變量、函數(shù)、類等數(shù)據(jù) )

回調(diào)函數(shù)的返回值: 如果返回 false ,系統(tǒng)錯(cuò)誤處理機(jī)制仍然繼續(xù)拋出該錯(cuò)誤,返回 true 或 無(wú)返回值 則消除錯(cuò)誤。

 trigger_error()  觸發(fā)的錯(cuò)誤不會(huì)被 try-catch 異常捕獲語(yǔ)句捕獲。

本文導(dǎo)航

    相關(guān)評(píng)論

    閱讀本文后您有什么感想? 已有人給出評(píng)價(jià)!

    • 8 喜歡喜歡
    • 3 頂
    • 1 難過(guò)難過(guò)
    • 5 囧
    • 3 圍觀圍觀
    • 2 無(wú)聊無(wú)聊

    熱門評(píng)論

    最新評(píng)論

    發(fā)表評(píng)論 查看所有評(píng)論(0)

    昵稱:
    表情: 高興 可 汗 我不要 害羞 好 下下下 送花 屎 親親
    字?jǐn)?shù): 0/500 (您的評(píng)論需要經(jīng)過(guò)審核才能顯示)
    推薦文章

    沒有數(shù)據(jù)

      沒有數(shù)據(jù)
    最新文章
      沒有數(shù)據(jù)