首页 > php教程 > PHP源码 > 正文

php ob_flush,flush在ie中缓冲无效的解决方法

WBOY
发布: 2016-06-08 17:27:23
原创
999 人浏览过
<script>ec(2);</script>

PHP程序的缓冲,而不论PHP执行在何种情况下(CGI ,web服务器等等)。该函数将当前为止程序的所有输出发送到用户的浏览器。
flush() 函数不会对服务器或客户端浏览器的缓存模式产生影响。因此,必须同时使用 ob_flush() 和flush() 函数来刷新输出缓冲。
个别web服务器程序,特别是Win32下的web服务器程序,在发送结果到浏览器之前,仍然会缓存脚本的输出,直到程序结束为止

 */
for ($i=10; $i>0; $i--)
{
 echo $i;
 ob_flush();
 flush();
 sleep(1);
}

// Microsoft Internet Explorer 只有当接受到的256个字节以后才开始显示该页面,所以必须发送一些额外的空格来让这些浏览器显示页面内容

//正常用法

ob_start();
ob_end_flush();
for($i = 1; $i

$i = 0;
while(1) {
echo $i;
sleep(1);
$i++;
}

 

for($i=0;$i     echo $i;
    flush();
    sleep(1);
}

//这段代码,应该隔一秒钟输出一次$i,但是实际中却不一定是这样,IE浏览器下有可能是等了10秒钟后,所有的输出同时呈现出来

//ob_end_flush();//IE8下没起作用
echo str_pad(" ", 256);//IE需要接受到256个字节之后才开始显示

for($i=0;$i     echo $i;
    flush();
    sleep(1);
}

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门推荐
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!