我有一个问题。我正在学习cakephp 3,我想做以下工作: 用户输入日期和时间(该日期和时间以日期时间格式保存到mysql中),系统需要在输入的日期时间前几个小时发送电子邮件(例如,之前1小时)
但是,我想在不使用cronjob的情况下执行此操作。
因此用户输入2019-05-12 12:00,我想立即安排任务在2019-05-12 11:00发送电子邮件。
这是可能的,是的,您能给我任何指示吗?我还检查了Cakephp任务,但似乎看不到整个图片
答案 0 :(得分:1)
创建Shell
bin/cake bake shell CronJobs
打开创建的外壳并创建发送电子邮件的方法,例如:
public function sendEmal()
{
}
在此方法内,添加代码以选择数据,并添加Mailer发送邮件。
现在在您的cron标签设置任务中,并指向该shell脚本,例如
* 1 * * * bin/cake CronJob sendEmail
请阅读:
更新:
但是,我想在不使用cronjob的情况下执行此操作。
其他方法是实现某些Queue系统。
阅读here了解更多信息