我试图在发送电子邮件时捕获异常,但Laravel不会这样做。我读到Laravel将每个警告和错误都转换为ErrorException,但这似乎在我的情况下不起作用。
$transportExchange = new SmtpTransport($myHost, 25, 'tls');
$transportExchange->setUsername('...');
$transportExchange->setPassword('...');
$configExchange = new Swift_Mailer($transportExchange);
try {
Mail::setSwiftMailer($configExchange);
Mail::to($email['to'])->send(new GeneralEmail($email));
} catch (ErrorException $ex) {
do_something();
}
当密码不正确时,我会看到一个Laravel错误屏幕,显示stream_socket_enable_crypto():SSL操作失败,代码为1。OpenSSL错误消息:错误:1416F086:SSL例程:tls进程服务器证书:证书验证失败
但我想访问do_something()语句。
1条答案
按热度按时间a7qyws3x1#
三天后我在这里找到了答案:Why does
catch (Exception $e)
not handle thisErrorException
?这就是我需要做的: