Laravel Mail发送电子邮件,但返回false [英] Laravel Mail sending email but returning false

查看:670
本文介绍了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.';
}

这篇关于Laravel Mail发送电子邮件,但返回false的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆