PHP中断的输出刷新/休眠
所以我有这个代码:PHP中断的输出刷新/休眠,php,flush,output-buffering,Php,Flush,Output Buffering,所以我有这个代码: @ini_set("output_buffering", "Off"); @ini_set('implicit_flush', 1); @ini_set('zlib.output_compression', 0); @ini_set('max_execution_time',1500); header( 'Content-type: text/html; charset=utf-8' ); header("Cache-Control: no-cache, must-reval
@ini_set("output_buffering", "Off");
@ini_set('implicit_flush', 1);
@ini_set('zlib.output_compression', 0);
@ini_set('max_execution_time',1500);
header( 'Content-type: text/html; charset=utf-8' );
header("Cache-Control: no-cache, must-revalidate");
header('X-Accel-Buffering: no');
~z~剪掉~
echo "Number Echos<br />"; // echo
for ($i = 0; $i < 42; $i++) { // send 41
echo "Number". $i ." sent!<br>"; // echo this * the above
if(sleep(4)!=0)
{
echo "Error";
break;
}
flush();
ob_flush();
}
echo“数字Echos
”;//回声
对于($i=0;$i<42;$i++){//send 41
回显“编号”.$i.“已发送”;//回显此*以上内容
如果(睡眠(4)!=0)
{
回声“错误”;
打破
}
冲洗();
ob_flush();
}
直到大约两周前,代码运行良好。现在,代码将使页面超时。如果我删除flush()
,它会在加载所有数据块后将上述数据块作为一个数据块输出(即等待,然后一次输出所有41个数据块,而不是1个数据块)。如果能帮我指出正确的方向,我将不胜感激
Apache 2.2.29版
PHP版本5.4.35
在循环中回显错误后,尝试添加
flush
和ob\u flush
,看看它会带你去哪里。谢谢大家的回答@瑞安·文森特——同样的结果。Tomasz Struczyński-内部服务器错误。@RyanVincentPHP已更新,但随后恢复,在多台主机上进行了尝试。在循环中回显错误后,将持续添加flush
和ob_flush
,然后查看它将带您去哪里。感谢各位的回答@瑞安·文森特——同样的结果。Tomasz Struczyński-内部服务器错误。@RyanVincentPHP已更新,但随后恢复,在多台主机上试用,问题仍然存在