2014-12-11 52 views
0

我使用Ubuntu服务器14.04我有一些问题在我的脚本...脚本给我的反应非常好,如果我使用死亡而不是睡眠后回声在其他条件但当我使用睡眠(3600 )在其他条件下它不给我任何回应呼应后...这是我的代码PHP的休眠功能与While循环

date_default_timezone_set("Europe/London"); 

$st_time = '12:00'; 

$et_time = '18:00'; 

$cur_time = date("H:i"); 

while (1) { 

    if (($cur_time < $et_time) && ($cur_time > $st_time)) { 
     //Enter and perform Some function 
    } else { 
     echo 'sleep for one hour Bye';  
     sleep(3600) 
    } 
} 
+1

你在* *预期到发生? “睡眠(3600)”意味着等待60分钟;这意味着它会在一个小时后才能得到答复。但是,PHP通常被配置为中止脚本,这些脚本所用时间不会超过30秒(约30秒),因此您可能会在发生这种情况时发生错误。 – Wyzard 2014-12-11 05:50:53

+0

你可以检查这篇文章,也许有帮助http://stackoverflow.com/questions/740954/does-sleep-time-count-for-execution-time-limit和http://stackoverflow.com/questions/8518203/max -execution时间和睡眠 – tzafar 2014-12-11 05:52:09

回答

1

试试这个代码,代码睡在微seceonds:

date_default_timezone_set("Europe/London"); 
$st_time = '12:00'; 
$et_time = '18:00'; 
$cur_time = date("H:i"); 
while (true) { 
if (($cur_time < $et_time) && ($cur_time > $st_time)) { 
//Enter and perform Some function 
} else { 
usleep(3600); 
echo 'sleep for one hour Bye';   
} 
}