首页 > 解决方案 > 如何在 laravel 中转发电子邮件?

问题描述

我正在使用https://github.com/Webklex/laravel-imap从我的邮件服务器检索电子邮件。

现在我需要转发所有正文(文本、html、附件)的确切邮件。如何转发电子邮件?

标签: laravelemailsmtpimaplaravel-mail

解决方案


我正在做同样的事情,并想给出一个与使用 Laravel-IMAP 获取电子邮件然后转发相关的更具体的答案。

看到这个答案有很大帮助。

use Illuminate\Mail\Mailable;

public function build()
{
  $this->view('emails.emails.received')->with('body', $this->message->getHTMLBody())
       ->from($this->message->getFrom()->first()->mail, $this->message->getFrom()->first()->personal)
       ->to('<forwarded_email>')
       ->replyTo($this->message->getReplyTo()->first()->mail, $this->message->getReplyTo()->first()->personal)
       ->subject($this->message->getSubject());

  foreach ($this->message->getAttachments() as $attachment) {
    $this->attach($attachment);
  }

  $this->withSwiftMessage(function ($msg) {
    $msg->getHeaders()->addTextHeader('In-Reply-To', $this->message->getMessageId());
    $msg->getHeaders()->addTextHeader('references', $this->message->getReferences());
  });

  return $this;
}

另外 - 我的模板emails.emails.received仅包含以下内容: {!! $body !!}


推荐阅读