我使用的是Laravel5.5和邮枪。我想向700多个收件人发送电子邮件活动,而且这个列表可能会增加到数千个。目前,我正在循环浏览每个电子邮件地址,并一次发送一封电子邮件。因此,通常只有大约530封电子邮件发出。我在网上搜索过,似乎找不到一个很好的解释,说明如何更有效地处理这一问题,以便发送所有电子邮件。如有任何建议,将不胜感激。
public function mailCampaign()
{
//Code to get all email data in JSON
$emails= json_decode($data->getBody());
$baseUrl = config('constants.base_url');
foreach($emails as $key => $email){
Mail::to($email)
->send(new EmailInstance($variable, $email, $baseUrl));
}
$data = ['message' => 'Success. Emails have been sent.'];
return response()->view('emails.mail', $data, 200);
}
你不应该一封接一封地发电子邮件。改用MailgunAPI。您可以使用带有Bogardo/Mailgun包的API发送数千封电子邮件。
邮件枪支持通过单个API调用发送给一组收件人的功能。这是通过指定多个收件人电子邮件地址作为参数和使用收件人变量来实现的。