PHP try catch 不会因 Laravel 代码错误而失败

时间:2021-05-07 12:23:14

标签: php try-catch

我有一份工作,它使用一个方法调用一个类,该方法可以做一些事情。

我已将这个方法调用封装在 try catch 中,它将正确捕获无效的类名,但不会捕获断开的关系。

在我的工作中:

try {
    $this->LeadHandler->deliver();
    $this->lead->setStatus('delivered');
} catch(\Exception $e){
    return $this->lead->setStatus('delivery failure');
}

交付方式:

public function deliver()
{
    Mail::to(['email@email.com'])->send(new SendLead($this->lead));
    $this->lead->clients()->attach(1);
}

上面的代码可以正常工作,但是如果 attach 方法中有错误,它不会抛出错误并且作业显示为已处理。

如果我故意将 Mail 外观输入 Ail,它会抛出错误并且作业失败。

但是,如果我通过调用 client() 而不是 clients() 来破坏关系附加,它不会使工作失败。

我尝试用一​​种方法将多个事物分组并尝试捕获的方式不正确吗?

0 个答案:

没有答案