Как отправить несколько электронных писем, получая данные пользователя в представлении - Laravel - PullRequest
0 голосов
/ 18 июня 2019

Я пытаюсь выяснить, как я могу отправить несколько электронных писем с пользовательским «именем пользователя» или соответствующими данными, связанными с пользователем.

Я использовал BCC для отправки большого списка пользователей, например так:

Mail::bcc($emails)->send(new Comunications($data));

Это работает нормально, но ... Что если мне нужно отрендерить свою электронную почту с данными текущей электронной почты?

Я знаю, я должен перебрать массив $ emails и вызватьОтправлять по почте каждый цикл.

Ребята, это не очень мощно ... Если мне нужно отправить более 50 писем, это займет некоторое время, а иногда я получаю эту ошибку:

Ожидаетсякод ответа 354, но получил код «550» с сообщением «550 5.7.0 Запрошенное действие не выполнено: слишком много писем в секунду

Да, возможно, это потому, что я тестирую с Mailtrap, но не хочубеспокоиться об этом в будущем.

Это то, что я должен сделать сейчас: (

foreach ($sending_to_array as $send){
    $user = User::where('email', $send['email'])->first();
    if(!empty($user)){
        Mail::to($send['email'])->send(new Comunications($datas, $user));
    }
}

Ну, мне это не нравится.

Что вы думаетебудет лучшим решением для этого?

Может быть, добавить задание Cron и запустить его как очередь?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...