我们能否将消息编译并存储为PHP mailer中的草稿,然后再发送每条消息?
发布于 2014-04-24 08:38:14
使用PHPMailer是可以做到这一点的。在将PHPMailer实例配置为您通常需要发送消息的所有内容之后,不要调用send() --而是调用preSend() (构造消息),然后使用getSentMIMEMessage()获取消息内容。
$mail->preSend();
$message = $mail->getSentMIMEMessage();然后,$message将包含一条完整的RFC822消息,您可以将该消息放在数据库、队列或其他要稍后发送的内容中。要在以后执行实际的发送,可以直接使用PHPMailer的SMTP类。要了解如何驱动该类,请查看smtpSend()函数。
发布于 2014-04-22 07:03:25
我不认为PHPMailer支持这个特性。但是您可以通过使用来完成这一任务。在数据库中创建一个表来存储消息、收件人、来自、标头等,稍后由PHPMailer从CRON作业发送它们。
发布于 2014-04-22 07:08:12
PHPMailer不能支持这一点,因为它保存了在脚本结束后会死掉的对象中的电子邮件( HTTP协议就是这样工作的)。
如果你想把它们发送给后者(比如15分钟后),你确实需要使用CRON作业,并制作一个脚本,查看数据库并发送电子邮件。
如果您想在脚本的生命周期内发送它们(在标记后发送它们),您可以简单地执行一个电子邮件数组,并在结束时对它们进行foreach。
https://stackoverflow.com/questions/23212634
复制相似问题