如何在Laravel 5中检查是否发送电子邮件

dha*_*ran 0 php laravel laravel-4 laravel-5 laravel-5.1

我具有向注册用户发送电子邮件的功能。这就是我检查是否应发送电子邮件的方式。

$email=$details->email;
$subject = 'Looking for blood donor';
$status=Mail::send('emails.welcome', $data, function($message)
                        use($subject,$email){
                        $message->from('no-reply@bloodlink.com', 'Blood Link');
                        $message->bcc('no-reply@bloodlink.com');
                        $message->to($email)->subject($subject);
                    });
Run Code Online (Sandbox Code Playgroud)

我正在使用是否发送支票电子邮件,但它不起作用..

if($status)
{
    return Response::json(array('status'=>'success',
                                'data'=>("Your email has been sent successfully")
                         ), 200);
}else{
    return Response::json(array('status'=>'error',
                                'data'=>("something went wrong..!!")
                         ), 200);
}
Run Code Online (Sandbox Code Playgroud)

Dru*_*jen 5

Mail::send()方法不返回任何内容。

您可以使用Mail::failures()(我认为是4.1中引入的)方法来获取失败的接收者数组,在您的代码中看起来像这样。

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.';
}
Run Code Online (Sandbox Code Playgroud)