Laravel Mail 发送电子邮件但返回 false
我正在尝试发送电子邮件并在需要时显示任何错误.以下代码正在发送电子邮件,我收到它就好了.但问题是,当我检查 $sent var 时,它对我返回 false.
I am trying to send a email and show any errors if needed. The following code is sending a email and I am receiving it just fine. The issue though, is that when I do the check on the $sent var, it returns false for me.
我只是在这里遗漏了什么吗?可能是因为晚了.谁知道...
Am I just missing something here? It might be because it's late. Who knows...
$sent = Mail::send('emails.users.reset', compact('user', 'code'), function($m) use ($user)
{
$m->to($user->email)->subject('Activate Your Account');
});
if( ! $sent)
{
$errors = 'Failed to send password reset email, please try again.';
}
推荐答案
Mail::send() 方法不返回任何内容.
The Mail::send() method doesn't return anything.
您可以使用 Mail::failures()(我认为在 4.1 中引入)方法来获取失败的收件人数组,在您的代码中它看起来像这样.
You can use the Mail::failures() (introduced in 4.1 I think) method to get an array of failed recipients, in your code it would look something like this.
Mail::send('emails.users.reset', compact('user', 'code'), function($m) use ($user)
{
$m->to($user->email)->subject('Activate Your Account');
});
if(count(Mail::failures()) > 0){
$errors = 'Failed to send password reset email, please try again.';
}
相关文章