php执行结果如何实时输出并显示在浏览器中? - 技术问答

for($i=10;$i>0;$i--) {? ?echo $i;? ? flush();? ? sleep(1);}?>论坛里面已经有同类的问题了,比如 ,但是按照里面的做法还是无法实现,谁有这个终极做法,不管php.INI或者apache如何设置都能实现将php执行结果实时输出并显示在浏览器中?

for($i = 1; $i <= 300; $i++ ){
print(" ");
// 这一句话非常关键,cache的结构使得它的内容只有达到一定的大小才能从浏览器里输出
// 换言之,如果cache的内容不达到一定的大小,它是不会在程序执行完毕前输出的。经
// 过测试,我发现这个大小的底限是256个字符长。这意味着cache以后接收的内容都会
// 源源不断的被发送出去。
}

For($j = 1; $j <= 20; $j++) {
echo $j."
";
flush(); //这一部会使cache新增的内容被挤出去,显示到浏览器上
sleep(1); //让程序"睡"一秒钟,会让你把效果看得更清楚
}

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-12-15
$str = \'Hello world\";? ?? ? echo $str . str_repeat(\' \', 256);? ?? ? ob_flush();? ?? ? flush();? ?? ?sleep(10);??echo $str; 这段代码则会马上在屏幕上打印 Hello world。关键就在于第2和第3行调用的两个函数 ob_flush() 和 flush()。这两个函数得一起使用才能保证页面马上输出Hello world。其中str_repeat(\' \', 256)则是为了解决某些浏览器必须在接收到256个字符后才会显示内容。 到技术吧网站查看回答详情>>本回答被网友采纳
第2个回答  2013-04-01
你好,
ob_start();

for($i=0;$i<70;$i++)

{

echo $i;

ob_flush();

flush();

usleep(3000);

}
希望对你有所帮助!本回答被网友采纳
相似回答