您好,我在这里遇到了一些问题。我的 mysql 数据库中有一条消息,我想根据计划的日期发送一条消息,有什么方法可以做到这一点:服务器应该自行发送邮件的确切日期是什么时候,或者是否可以进行页面加载每天我都无法发送电子邮件(如果没有人访问该网站)。谢谢。我正在使用 php 和 mysql 数据库。我的数据库中有预定日期列
最佳答案
您可以使用 cron job调用一个脚本,该脚本以设定的时间间隔(可能每小时一次)检查数据库,然后让该脚本提取相关消息并发送它们。
它的 cron 看起来像这样:
0 * * * * /path/to/email/script.php
然后该脚本可以查询数据库并发送那些需要发送的消息。当然,您可以将其设置为每分钟运行一次 (* * * * *
),但我会非常警惕让任何脚本每分钟运行一次!
这并不是真正理想的想法,相反,您应该考虑使用某种形式的队列管理。如果你看一下queues.io您可以找到有关各种流行队列项目的大量信息。
我还在 setting up background jobs using resque 上找到了这篇文章非常有帮助!
当然,如何集成这样的系统很大程度上取决于您的代码库和环境。
一些框架很好地集成了这种功能,我曾使用过 Laravel 4's queue component相当多,而且它确实使工作变得非常容易..
实际上,许多人最终只是使用 cron/脚本组合来完成这项工作,但重要的是要知道还有其他(更好)的方法来实现这一目标。
关于php - 如何触发从数据库自动发送电子邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20500459/