【问题标题】:Laravel 5.2 multiple email sending. Get email address in viewLaravel 5.2 多邮件发送。在视图中获取电子邮件地址
【发布时间】:2016-09-24 13:48:48
【问题描述】:

如何在“emails.subscribed”视图中获取实际/当前的电子邮件地址? 这是我的代码:

Mail::send('emails.subscribed', $data, function($message) use ($subject,$recievers,$meta) {
    foreach ($recievers as $email) {
        $message->bcc($email,$email);
        $message->email = $email;
    }
});

我需要获取当前电子邮件地址的视图(不是整个电子邮件数组,只是当前的): {{$somehow->email}}

【问题讨论】:

  • 所以你可以说:foreach(){ Mail::send() } 如果你有很多收件人,这个方法不会太慢吗?
  • 是的,您确实应该这样做。是的,它可能会很慢,但无论如何都必须单独创建视图,所以我认为它毕竟是最好的选择。祝你好运!
  • 明白。我希望有另一种方法。所以我接受@Adiasz 的回复。

标签: php laravel email swiftmailer


【解决方案1】:

一封一封地发送邮件,而不是全部密件抄送,然后您可以轻松更改邮件视图:

$recipients = [ ["name" => "John", "email" => "john@john.com"], ["name" => "Doe", "email" => "doe@doe.com"] ];

$subject = 'subject';
$meta = 'meta';

foreach($recipients as $recipient) {
    // here you declare variables accesable in view file
    $dataToPassToEmailView = [];
    // **key** of this table is variable **name in view**
    $dataToPassToEmailView['recipient'] = $recipient;

    Mail::send('emails.subscribed', $dataToPassToEmailView, function($message) use ($subject, $recipient, $meta) {
        $message->to($recipient['email'], $recipient['name']);
        $message->subject($subject);
    });
}

查看 emails.subscribed.blade.php:

Email: {{ $recipient['email'] }}
Name: {{ $recipient['name'] }}

【讨论】:

    猜你喜欢
    • 2017-04-02
    • 2020-09-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多