当前位置: 首页 > 面试题库 >

Laravel Mail :: send()发送到多个收件人或密件抄送地址

太叔航
2023-03-14
问题内容

使用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正确配置。因此,首先请确保您可以仅向一个用户发送电子邮件,然后与许多用户一起测试代码。

此外,使用此简单代码,我的电子邮件都没有发送到免费的邮件帐户,我只收到了我的付费托管帐户中具有收件箱的电子邮件,因此它们可能被某些过滤器捕获了(这可能是简单的主题/内容问题,但我提到这是为了防止您没有收到一些电子邮件。



 类似资料:
  • 我想发送一封电子邮件给多个密件抄送配方使用gmailapp在谷歌应用程序脚本。 var bcc=“abc@example.com”; var bcc2=“xyz@example.com”; 我可以通过使用for循环来解决这个问题 对于(var i=0;i

  • 问题内容: 我知道有一些与此类似的问题,但我无法使其正常运行。 好的,我在一个名为$ emailList的变量中有一个从数据库中获取的电子邮件列表。如果将变量放在该部分中,则可以获取代码以从表单发送电子邮件,但无法使其与bcc一起使用。我什至还添加了一封电子邮件,以防万一,但这没什么关系。 这是我的代码。 我试过两个代码: 和 不是因为这些电子邮件而没有分开电子邮件。我知道他们是因为如果我在本节中

  • 问题内容: 如何在sendrawemail(java)中添加“抄送”和“密件抄送”收件人列表。我只是将所有收件人添加到一个列表中并发送邮件。没有单独的方法来为SendRawEmailRequest设置抄送和密件抄送。 有什么方法可以设置Destination类型的对象? 问题答案: 关于SendRawEmail,您应该能够通过在原始邮件标题中进行设置来区分“收件人”,“抄送”和“密件抄送”目的地。

  • 问题内容: 我有一些PHP代码,用于将表单发送到特定的电子邮件地址。但是,我想在PHP发送时再添加几个电子邮件地址。我怎样才能做到这一点? 谢谢。 问题答案: 这将起作用:

  • 我使用PHPMailer发送电子邮件,我使用此代码添加要发送到的电子邮件地址: 它适用于一封电子邮件,但不适用于多封电子邮件。 我听到一个错误,说 您必须提供至少一个收件人电子邮件地址。

  • VB.Net允许从您的应用程序发送电子邮件。 System.Net.Mail命名空间包含用于将电子邮件发送到简单邮件传输协议(SMTP)服务器以进行传递的类。 下表列出了一些常用类 - Sr.No. 类和描述 1 Attachment 表示电子邮件的附件。 2 AttachmentCollection 存储要作为电子邮件的一部分发送的附件。 3 MailAddress 表示电子邮件发件人或收件人的