首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >PHP编译和存储消息以供以后发送

PHP编译和存储消息以供以后发送
EN

Stack Overflow用户
提问于 2014-04-22 06:59:29
回答 6查看 5.9K关注 0票数 2

我们能否将消息编译并存储为PHP mailer中的草稿,然后再发送每条消息?

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2014-04-24 08:38:14

使用PHPMailer是可以做到这一点的。在将PHPMailer实例配置为您通常需要发送消息的所有内容之后,不要调用send() --而是调用preSend() (构造消息),然后使用getSentMIMEMessage()获取消息内容。

代码语言:javascript
复制
$mail->preSend();
$message = $mail->getSentMIMEMessage();

然后,$message将包含一条完整的RFC822消息,您可以将该消息放在数据库、队列或其他要稍后发送的内容中。要在以后执行实际的发送,可以直接使用PHPMailer的SMTP类。要了解如何驱动该类,请查看smtpSend()函数。

票数 10
EN

Stack Overflow用户

发布于 2014-04-22 07:03:25

我不认为PHPMailer支持这个特性。但是您可以通过使用来完成这一任务。在数据库中创建一个表来存储消息、收件人、来自、标头等,稍后由PHPMailer从CRON作业发送它们。

票数 3
EN

Stack Overflow用户

发布于 2014-04-22 07:08:12

PHPMailer不能支持这一点,因为它保存了在脚本结束后会死掉的对象中的电子邮件( HTTP协议就是这样工作的)。

如果你想把它们发送给后者(比如15分钟后),你确实需要使用CRON作业,并制作一个脚本,查看数据库并发送电子邮件。

如果您想在脚本的生命周期内发送它们(在标记后发送它们),您可以简单地执行一个电子邮件数组,并在结束时对它们进行foreach

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23212634

复制
相关文章

相似问题

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