我和Laravel一起发邮件是这样的:
foreach ($users as $user) {
\Mail::to($user())->send(new Newsletter($user));
}
我想拥有一个拥有bad_domain响应的所有用户的数组。我发现在docs中,Laravel使用了具有a way to find bad_domain respones的Swiftmailer:
// Pass a variable name to the send() method
if (!$mailer->send($message, $failures))
{
echo "Failures:";
print_r($failures);
}
/*
Failures:
Array (
0 => [email protected],
1 => [email protected]
)
*/
但是,我想使用Mailable类。我不知道如何使用Swiftmailer(我可以通过\ Mail :: getSwiftMailer()访问)。
从Laravel使用Mailable时,有没有简单的方法来获取bad_domains?
您可能只访问bad_domains,但不能使用Swiftmailer(Swiftmailer 4 does not retrieve bounces as $failedRecipients)进行反弹。
一个人可以得到bad_domains它
\Mail::to($user)->send(new \App\Mail\Hi());
dd(\Mail::failures());
见Illuminate\Mail\Mailer.php
/**
* Send a Swift Message instance.
*
* @param \Swift_Message $message
* @return void
*/
protected function sendSwiftMessage($message)
{
try {
return $this->swift->send($message, $this->failedRecipients);
} finally {
$this->forceReconnection();
}
}