Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/285.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 仅运行脚本一次,持续5分钟(Linux)_Php_Linux_Cron - Fatal编程技术网

Php 仅运行脚本一次,持续5分钟(Linux)

Php 仅运行脚本一次,持续5分钟(Linux),php,linux,cron,Php,Linux,Cron,我有一个php脚本,我想运行一段特定的时间(例如5分钟),但只运行一次。对于cron作业,这将无限期地运行。还有别的方法吗?处理这个问题的方法是: 当触发需要cron作业运行的事件时,在cron作业将读取的某个位置放置一个标志 让cron作业一直运行,询问“我需要运行吗?”。它检查标志。如果它看到它,它将删除该标志并运行指定的时间。如果没有,只需等待它下次运行(检查标志) 在实际的cron作业中,将“max_execution_time”设置为5分钟。然后它应该停在(或刚刚超过)5分钟。更准确地

我有一个php脚本,我想运行一段特定的时间(例如5分钟),但只运行一次。对于cron作业,这将无限期地运行。还有别的方法吗?

处理这个问题的方法是:

  • 当触发需要cron作业运行的事件时,在cron作业将读取的某个位置放置一个标志
  • 让cron作业一直运行,询问“我需要运行吗?”。它检查标志。如果它看到它,它将删除该标志并运行指定的时间。如果没有,只需等待它下次运行(检查标志)
  • 在实际的cron作业中,将“max_execution_time”设置为5分钟。然后它应该停在(或刚刚超过)5分钟。更准确地说,如果可以的话,在循环中运行的脚本中包含一个计时器
    你能解释一下这是干什么用的吗?可能还有更好的选择,用户指定希望服务器收集数据的时间量。为此,我创建了一个单独的php脚本,我用cron jobs调用它。但是现在我意识到脚本确实会在指定的时间内运行,但它也会每天运行!!!查看
    at
    batch
    命令。更多信息:。我已经检查过了,但是似乎没有办法包括运行时间。嗨,谢谢你的回答。我想出了另一个选择。当时间正确时,我调用exit()函数。我还使用exec()函数并将其作为后台作业运行。你觉得怎么样?很公平-很有效,很好。exit()是循环中计时器所指的,但是如果exec完成了这项工作,那就太好了。