Laravel Mail :: send()发送到多个收件人或密件抄送地址
使用Laravel的回调时,我似乎无法成功发送到 地址Mail::send()
,但是,当我仅指定 收件人时,该代码仍然有效。
我试过链接:
// for example$emails = array("myemail1@email.com", "myemail2@email.com");
$input = Input::all();
Mail::send('emails.admin-company', array('body' => Input::get('email_body')),
function($message) use ($emails, $input) {
$message
->from('admin@admin.org', 'Administrator')
->subject('Admin Subject');
foreach ($emails as $email) {
$message->to($email);
}
});
并传递一个数组:
// for example$emails = array("myemail1@email.com", "myemail2@email.com");
$input = Input::all();
Mail::send('emails.admin-company', array('body' => Input::get('email_body')),
function($message) use ($emails, $input) {
$message
->from('admin@admin.org', 'Administrator')
->subject('Admin Subject');
$message->to($emails);
});
但似乎都不起作用,并且在返回Mail :: failures()时收到失败消息,Mail ::
failures()的var_dump()显示了我尝试发送到的电子邮件地址,例如:
array(2) { [0]=>
string(18) "myemail1@email.com"
[1]=>
string(18) "myemail2@email.com"
}
显然做错了,由于我也不了解API,将不胜感激:http
:
//laravel.com/api/4.2/Illuminate/Mail/Message.html#method_to
我意识到我可以将Mail::send()
方法放入Mail::send()
每个电子邮件地址的for /
foreach循环中,但这对我来说似乎不是最佳解决方案,我希望->bcc()
一旦一切正常,我也将能够访问所有地址收件人将看不到邮件还会发送给谁。
回答:
我已经使用以下代码对其进行了测试:
$emails = ['myoneemail@esomething.com', 'myother@esomething.com','myother2@esomething.com'];Mail::send('emails.welcome', [], function($message) use ($emails)
{
$message->to($emails)->subject('This is test e-mail');
});
var_dump( Mail:: failures());
exit;
结果-空数组失败。
但是,当然,您需要app/config/mail.php
正确配置。因此,首先请确保您可以仅向一个用户发送电子邮件,然后与许多用户一起测试代码。
此外,使用此简单代码,我的电子邮件都没有发送到免费的邮件帐户,我只收到了我的付费托管帐户中具有收件箱的电子邮件,因此它们可能被某些过滤器捕获了(这可能是简单的主题/内容问题,但我提到这是为了防止您没有收到一些电子邮件。
以上是 Laravel Mail :: send()发送到多个收件人或密件抄送地址 的全部内容, 来源链接: utcz.com/qa/434410.html