首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >迅速发送邮件-异步发送电子邮件

迅速发送邮件-异步发送电子邮件
EN

Stack Overflow用户
提问于 2017-10-16 12:17:00
回答 1查看 477关注 0票数 1

在一个具有密集电子邮件活动的项目上,我们正在创建用于发送电子邮件的异步工作流。工作流由两个步骤组成:

  1. 创建消息(我们设置了Subject,From,to,body,附件),然后通过$mailer->toString()转换为字符串并存储到数据库中。
  2. 从数据库中获取一些最新的电子邮件并发送给用户。

存储到数据库中的字符串实际上是有效的多部分EML文件(例如,可以用Outlook打开),具有消息头+正文。

问题:

如何使用它的传输能力通过SwiftMailer发送消息转换成的toString?

谢谢。

数据库中存储的字符串示例:

代码语言:javascript
复制
Message-ID: <1803a1a74c7612e43d58a8ca558117f3@refactoring.local>
Date: Mon, 16 Oct 2017 13:50:31 +0200
Subject: Sample subject
From: info@refactoring.local
Reply-To: info@refactoring.local
To: aaa@bbb.cc
MIME-Version: 1.0
Content-Type: multipart/alternative;
 boundary="_=_swift_v4_1508154632_faf5d3b80866048d993d77a62a9e6497_=_"

--_=_swift_v4_1508154632_faf5d3b80866048d993d77a62a9e6497_=_
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable

sample body ...

--_=_swift_v4_1508154632_faf5d3b80866048d993d77a62a9e6497_=_
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: quoted-printable

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org=
/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns=3D"http://www.w3.org/1999/xhtml">
<head>
=09<meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3DUTF-8"=
 />
=09<title>Sample title</title>
=09</head>
<body>
=09=09

=09sample body ...
=09</body>
</html>

--_=_swift_v4_1508154632_faf5d3b80866048d993d77a62a9e6497_=_--
EN

回答 1

Stack Overflow用户

发布于 2017-10-16 12:32:07

没有简单的方法可以将with toString序列化的消息转换回Swift_Message。相反,您应该使用serialize函数将要存储在数据库中的Swift_Message转换回字符串。

代码语言:javascript
复制
$data = serialize($message);
// store inside database
// ...
// later..
$message = unserialize($message);
$mailer->send($message);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46770139

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档