我想编写一个脚本,每天下午 2 点向用户的手机发送推送通知。但是用户来自世界各地,因此我需要根据特定用户的时区及时发送该通知,我将其保存在数据库中,如“GMT+4”。
我需要通过 Cron 作业来完成此操作。我从未使用过它,所以我不知道如何编写该脚本并使其在 PHP 中工作。有人可以帮助我吗?
最佳答案
一个非常简单的方法是让 cron 作业每 1 分钟调用一次 PHP 脚本,并让它检查数据库中是否有需要完成的事情。如果需要做某事now(),那就去做吧。
在crontab中你可以使用这样的东西,
* * * * * /usr/bin/php /path/to/my/script.php
而script.php可以是这样的
<?php
$ts = time();
// Run for up to 50 seconds
while($ts + 50 > time())
{
... SELECT id, time FROM Table WHERE time <= timeFromGMT(GMTvalue) ...
if(returns a row){
Send notification;
Set a flag that notification is send;
}
sleep(5);
}
注意:使用一些锁定机制来防止同时多个进程。
关于php - 按时区 php 发送 cron 作业通知,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31262661/