我已经阅读了许多文章并在线进行了研究,但我无法弄清楚为什么这些命令无法在我的机器上运行。代码被执行但它在执行整个脚本时回响。我正在使用简单的代码对其进行测试,稍后我将轻松实现其他所有内容。这是代码:
ob_start();
echo "Start ...<br />\n";
for( $i = 0 ; $i < 5 ; $i++ )
{
echo $i."<br />\n";
ob_flush();
flush();
sleep(1);
}
echo "End ...<br />\n";
我尝试使用ob_end_flush()
,没有任何方法可以帮助我。我已经检查了php.ini的配置,它说:
output_buffering = 4096
zlib.output_compression = Off
implicit_flush = Off
我不知道出了什么问题,我也读过php.net“截至2012年8月,所有浏览器似乎都显示了一种全有或全无的缓冲方式。换句话说,虽然php正在运行,无法显示任何内容。“
我的代码错了吗?服务器设置?浏览器?有解决方法吗?
答案 0 :(得分:0)
虽然我不知道真正的答案,但您可以这样做:
<?php
ob_start();
ob_implicit_flush(false);
echo str_repeat(' ', 1024);
# rest of code here
答案 1 :(得分:0)
你试过吗?
ob_implicit_flush(true);