日期函数在php的while循环中

时间:2018-04-07 16:59:51

标签: php

我想在PHP的while循环中使用date()函数但是我收到错误

  

致命错误:超出最长执行时间500秒。

我尝试将执行时间设置为超过循环完成所需的时间,但是它没有按预期工作。

<?php
 ini_set('max_execution_time',500);

 print date("H:i");

 while(date("H:i")!="16:50"){

 $i=0;
 }

if(date("H:i")=="16:50"){

$file = "buttonStatus.txt";
$handle = fopen($file,'w+');
$onstring = "ON";
fwrite($handle,$onstring);
fclose($handle);

$i=1;
} 

echo $i;
?>

1 个答案:

答案 0 :(得分:0)

此代码:

while(date("H:i")!="16:50"){
   $i=0;
}

除了创建无限循环之外什么也没做,除非时间到达设定时间,否则无法退出。它实际上只是循环,永远不会到达它下面的代码。

如果你想在每天16:50运行这个脚本,你最好使用cron任务/工作。 cron是一个反复运行的任务,可能是每隔几分钟,每周,每月......无论你需要什么。

如果你能解释一下你在这里想要达到的目标,我可以给你一个更好的解决方案。