我知道在特定时间执行命令的cron作业,但是如果该时间不是恒定的呢?例如,假设用户在注册某项内容1小时后要求收到提醒邮件,是否有简单的方法可以做到这一点?
时机至关重要。实际上,我正在尝试创造一种人工智能,它基本上可以自己行动,但只能在一天中的可变时间点行动。任何帮助将不胜感激!
您可以使用at
在特定时间调度作业。Cron用于重复作业,at用于一次性/奇数间隔作业。但是,它们的分辨率都是1分钟,因此您不能以秒粒度指定开始周期。
该命令在Unix/Linux和Windows上都可用。
下面是一个可行的流程:
- 用户在1小时内请求电子邮件
- 在表中插入action (action_id, time)
- 在PHP服务器上创建一个cron作业,每分钟检查操作表中的操作,然后执行当时需要完成的操作
这是请求中的一个简单示例。可能会更复杂一些。
编辑:只有当你需要非常精确的时间管理时,这个建议可能是好的!
如果你不想使用cron
触发器,并且你对它们不熟悉,这里有两个php调度库。
http://www.php.brickhost.com/1)http://www.phpjobscheduler.co.uk/
2)