使用sleep函数可以实现延时执行,同时在命令中执行php可以不收最大时间的限制,所以可以用命令方式执行php文件循环延时执行一段代码来实现php的定时任务,可以设置一个时间戳开关,当时间大于开关的时间戳时,开始定时执行任务
//a.php
<?php
$time = '2018-03-04 15:00:00';
$flag = true;
while($flag) {
if(time() > strtotime($time)) {
$flag = false;
}
}
while(!$flag) {
//do something
sleep(60 * 60);//延时1小时
}
//在shell中执行php a.php