如何安排发送电子邮件

luc*_*axi 5 php message-queue

使用PHP,我有一个查询,通过我的数据库在一天中的某些时间查找具有提醒触发器的待处理任务.我有一个每10分钟运行一次的cronjob,并检查数据库中是否有"remind_me"字段设置为在接下来的10分钟内关闭的任何行.如果确实找到了什么,那么使用任务信息排队电子邮件的最佳方法是什么?

我想我需要某种消息队列系统,但电子邮件部分如何工作?我是否需要另一个每分钟运行一次的cronjob来检查队列系统?

小智 3

如果您想做一个邮件队列系统,我建议您看一下PEAR::Mail_Queue和相关教程。

当 10 分钟的脚本运行时,您将能够对邮件进行排队,并通过 cron 作业每 10 分钟清空邮件队列。您还可以每分钟清空邮件队列,并在队列中对相关邮件实施“在此之前不发送”的时间。

或者,您可以每分钟运行检查脚本,检查提醒在过去十分钟内到期的项目,并立即发送邮件,从而无需队列系统。

这可以通过记录您上次发送警报的时间来实现(这样您就不会错过任何警报,也不会发送两次警报)

希望有帮助。