我们在我们的一个函数中使用SwiftMailer来发送电子邮件。 最后,会向部门经理发送一份总报告,以便跟踪并了解功能使用情况。
管理员现在也愿意收到发送的电子邮件的副本,我们可以通过添加一个电子邮件副本作为电子邮件报告的附件来实现此目的。
我们如何创建swiftmailer消息而不发送消息,只使用它作为新swiftmailer电子邮件的附件。
答案 0 :(得分:1)
您可以将Swift_Message
添加为附件,如下所示:
$attachment = new \Swift_Attachment($messageAttachment, 'some-email.txt', 'text/plain');
但是,您的电子邮件现在将作为.txt
文件附加,其中包含所有邮件详细信息。我不确定这是否是预期的行为!?
完整示例:
$messageAttachment = (new \Swift_Message('Attached Email'))
->setFrom('yourmail@gmail.com')->setTo('yourmail@gmail.com')
->setBody("Attached Email Body", 'text/plain');
$attachment = new \Swift_Attachment($messageAttachment, 'some-email.txt', 'text/plain');
$message = (new \Swift_Message('Real Email'))
->setFrom('yourmail@gmail.com')->setTo('yourmail@gmail.com')
->setBody("Real Email Body", 'text/plain')
->attach($attachment);
$mailer->send($message);
附件some-email.txt
的内容如下所示:
Message-ID: <568d128d97e530d1389cb83b154d64eb@swift.generated>
Date: Tue, 05 Dec 2017 17:00:05 +0100
Subject: Attached Email
From: yourmail@gmail.com
To: yourmail@gmail.com
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Attached Email Body