2016-11-18 468 views
0

我正在使用Laravel 5.3并试图将邮件发送到特定的邮件地址。Laravel 5.3将邮件发送到多个电子邮件地址

目前我做到以下几点:

$newsletterMailAdresses = Newsletter::where('user_id', $userID)->pluck('mailAdress'); 

这将返回电子邮件不会忽略的阵列,以该邮件shouuld发送。

我,然后(通常)用于发送邮件是:

Mail::to("someMailAdress")->send(new newsletterMail($newsletterText)); 

我想到刚好路过该数组到to功能,但我敢肯定它不会工作....什么你可以做的,是每个邮件地址的foreach并发送邮件,但这是应该如何做,或者有更好的方式吗?

PS:我知道that线程,但它关于Laravel 4,所以有很多改变。

回答

2

我认为它应该工作,当你传递一个数组。检查参考:

https://laravel.com/api/5.3/Illuminate/Mail/Message.html#method_to

第一个参数可以是一个数组。尝试一下。

+0

哦,太好了,你是绝对正确的,这似乎是那么容易。谢谢! – nameless

+0

只是缺少一件事,我使用TinyMCE来创建新闻稿文本,所以变量'$ newsletterText'包含HTML,到目前为止我在邮件中获得了html,所以没有“编译”html,我该如何改变它? – nameless

+0

好吧,明白了,需要在刀片模板中使用'!!' – nameless

1

,我认为它应该工作,但你也可以试着这样做:

 Mail::raw('No Body', function($message) use ($emails) 
     {  
     foreach ($emails as $email) 
     { 
      $message->to($emails); 
     } 
     }); 

我在我的应用程序中使用这样的,它工作正常!

也许您也可以尝试发送一封电子邮件并对其进行审核,但您可以尝试使用电子邮件数组发送电子邮件。

0

Laravel 5.4 documentation上发送邮件:

方法接受一个电子邮件地址,用户实例,或用户的集合。如果您传递对象或对象集合,邮件程序将在设置电子邮件收件人时自动使用其电子邮件和名称属性,因此请确保这些属性在您的对象上可用。

0
Mail::to(['array','of','emails'])... 

Mail::cc(['array','of','emails'])... 

Mail::bcc(['array','of','emails'])... 
相关问题