Laravel推迟了电子邮件触发

时间:2017-04-25 11:58:11

标签: php laravel email scheduling

我想在注册后触发发送给用户的邮件(这没问题),然后在注册日期后一个星期,然后在注册日期后一个月。所以我想知道我怎么能这样做?

我认为那些可能不会受到Cron工作的影响,因为这项任务并非经常发生,而只是触发了两次。

我应该使用App->Console->Kernel.php来设置具有when()功能或类似功能的计划吗?什么是最好的方法?

2 个答案:

答案 0 :(得分:0)

这是基于意见的,因此不太适合stackoverflow格式,但这是我如何做的:

1weekemail1monthemail的用户记录上有标记,默认为false。

每晚运行两个计划任务,这些任务会获得符合时间条件但未设置标记的用户列表。

使用该结果集发送电子邮件,然后将适当的标志设置为true。

答案 1 :(得分:0)

创建一个scheduler function来检查users表中的每个注册用户,它需要一个last activityregistration time所在的用户条目,检查时间间隔并发送一个如果时间间隔条件满足,则将电子邮件发送到schedule,如每天或每小时一样。