繁体   English   中英

每5分钟执行一次PHP cron,但15分钟后将函数置于睡眠状态以运行

[英]Execute a PHP cron every 5 minutes but put a function to sleep to run after 15 minutes

我有一个PHP脚本,每5分钟在cron上运行一次。

*/5 * * * * /var/www/html/processMail.php

脚本中有一个我想每15分钟执行一次的函数,因此该函数将处于睡眠模式,但脚本的其余部分将每5分钟执行一次。

这个疯狂的想法会奏效吗?

这个疯狂的想法会奏效吗?

不,不会。 即使您设法等待15分钟,每15分钟的功能也会每5分钟执行一次,因此实际上每5分钟执行15分钟的功能。 而是创建一个每15分钟执行一次的第二个脚本或添加一个参数:

*/5 * * * * /var/www/html/processMail.php --mins=5
*/15 * * * * /var/www/html/processMail.php --mins=15

然后使用该功能解析PHP中的命令行参数 (和getopt )以进行相应处理。 另请参见PHP手册中有关命令行用法的部分

您可以将迭代器保存在文件或数据库中,并在每次运行后递增它,这样,您只能在脚本运行3次中运行一次。

但是,更好的解决方案将是编写另一个脚本并每15分钟运行一次。

暂无
暂无

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

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