繁体   English   中英

通过时区php发送cron作业通知

[英]send cron job notification by timezone php

我想编写一个脚本,该脚本将每天下午2点发送推送通知到用户的电话。 但是有来自世界各地的用户,因此我需要根据特定用户的时区及时发送该通知,我将其保存在数据库中,例如“ GMT + 4”。

我需要按Cron的工作来做。 我从未使用过它,所以我不知道如何编写该脚本并使它在PHP中工作。 有人可以帮助我吗?

一个非常简单的方法是让cron-job每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);       
} 

注意: 使用某些锁定机制可以防止同时执行多个进程。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM