W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
除了在異常處理器的 report
和 render
方法中檢查異常類型外,您也可以直接在您的自定義異常中定義 report
和 render
方法。當(dāng)定義了這些方法時(shí),它們將被框架自動調(diào)用:
<?php
namespace App\Exceptions;
use Exception;
class RenderException extends Exception
{
/**
* 報(bào)告異常
*
* @return void
*/
public function report()
{
//
}
/**
* 渲染異常為 HTTP 響應(yīng)
*
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
*/
public function render($request)
{
return response(...);
}
}
如果您的異常包含了僅在滿足某些條件時(shí)才報(bào)告的自定義報(bào)告邏輯,您可能需要指示 Laravel 使用默認(rèn)的異常處理配置去報(bào)告它。您可以在異常的 report
方法中返回 false
以實(shí)現(xiàn)之:
/**
* 報(bào)告異常
*
* @return bool|void
*/
public function report()
{
// 判斷異常是否需要自定義報(bào)告...
return false;
}
技巧:您可以通過類型提示傳遞任意的依賴到
report
方法中,它們將被 Laravel 的 服務(wù)容器 自動注入到方法中。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: