Laravel 5 - 如何捕获邮件:: send()错误?

时间:2017-01-06 20:33:07

标签: laravel laravel-5 laravel-mail

我有以下方法发送电子邮件:

Mail::send('emails.configuration_test', array(), function($email)use($request){
    $email->to($request->test_address)->subject('Configuration Test');
});

如果出现上述错误,我希望能够捕获异常。当我使用以下内容时:

try{
    Mail::send('emails.configuration_test', array(), function($email)use($request){
        $email->to($request->test_address)->subject('Configuration Test');
    });
}
catch(Exception $e){
    // Never reached
}

异常永远不会被捕获。相反,如果send()方法出错,我会得到一个Laravel堆栈跟踪作为响应。

在这种情况下如何捕获异常?

1 个答案:

答案 0 :(得分:33)

使用根命名空间\Exception可以解决问题。

而不是:

catch(Exception $e){
    // Never reached
}

我用过:

catch(\Exception $e){
    // Get error here
}