【问题标题】:I want to generate an email report (email sent copy) as soon as the email sent to the user in Laravel using Mail function我想在使用邮件功能将电子邮件发送给 Laravel 中的用户后立即生成电子邮件报告(电子邮件发送副本)
【发布时间】:2019-08-01 12:14:43
【问题描述】:

我想使用邮件功能在 Laravel 中将电子邮件发送给用户后立即生成电子邮件报告(电子邮件发送副本) 以下是已发送电子邮件的示例图片

please find the attached sample image

【问题讨论】:

  • 我使用以下代码发送电子邮件 Mail::to($request->input('test_email'))->send(new TestEmail($emailTemplate->content, $emailTemplate->主题));并创建 EventServiceProvider 以记录相同的内容。 protected $listen = [ 'Illuminate\Mail\Events\MessageSent' => [ 'App\Listeners\LogSentMessage', ] 在 LogSentMessage 中:EmailLog::create([ 'name' => $mailEvent->message->template_name, ' user_id' => $mailEvent->message->user_id, 'email_template_id' => $mailEvent->message->template_id, ]);

标签: php laravel laravel-mail laravel-events


【解决方案1】:

您可以像这样使用bcc Blind Carbon Copy 发送相同的邮件:

Mail::to($request->user())
    ->bcc('secret mail')
    ->send(new OrderShipped($order));

这样您就可以获得发送给用户的邮件的准确副本,并且密件抄送信息对用户不可见。

【讨论】:

  • 感谢您回复 Saurabh,如果我使用密件抄送,我会收到一封电子邮件,是否有任何方法可以获取 pdf 格式的报告(已发送电子邮件)我想存储在我们的应用程序中并将报告保存到数据库也是如此。
猜你喜欢
  • 1970-01-01
  • 2012-12-12
  • 2020-03-26
  • 2012-02-04
  • 2011-09-16
  • 2022-08-13
  • 1970-01-01
  • 2019-10-18
  • 2016-04-17
相关资源
最近更新 更多