大师求救,php的sleep()函数出现中断,什么原因?

代码如下,多次测试,函数里代码,函数每次在$i 循环到12与17之间时就停掉了, 也就是在sleep超过390s时就开始不稳定, 出现中断, 不往下执行了;

曾试过把phpini里的ignore_user_abort设置为on, 以及max_execution_time 设置为 0 ;还是不行;) 其他方法直接sleep,也是超过390s就会断掉;下面的程序就不执行了;
已搞了3天,试了各种方法, 头爆了,还是搞不明白哪里把时间给限制了,不得不请大师出马了
function ok{
abc();
}
//函数abc
function abc(){
set_time_limit(0);
ignore_user_abort(true);
//$s记录sleep的秒数;
$s=0;

for($i = 0; $i<50;$i++){

if ($s>360 && $s<420){
sleep(1);
$s=$s+1;
file_put_contents("ok.txt","延迟第".$i."个1s:".$s."\r\n",FILE_APPEND);// 输出到文件
}else{
sleep(30);
$s=$s+30;
file_put_contents("ok.txt","延迟第".$i."个30s".$s."\r\n",FILE_APPEND);
}

}}
----

输出:
延迟第8个30s270
延迟第9个30s300
延迟第10个30s330
延迟第11个30s360
延迟第12个30s390
延迟第13个1s:391
延迟第14个1s:392
延迟第15个1s:393

少时到第12个,多时到17个; 就不往下输出了

function ok后面要有个括号。这个不重要。
中断不是因为php程序,不是sleep的问题,一个原因是浏览器主动断开了,

一般来说,http来连接的,客户端都会等待一定时间后,就认为是连接丢失了,就会报504错误了。
也有个原因是webserver的原因,进程管理模块认为你的子进程进入了死循环,主动终止了。
还有个原因,就是:我不懂,我是随便胡说的,哈哈。来自:求助得到的回答
温馨提示:答案为网友推荐,仅供参考
相似回答