首頁  >  文章  >  後端開發  >  关于 output_buffering 一些疑义

关于 output_buffering 一些疑义

WBOY
WBOY原創
2016-06-13 12:56:10782瀏覽

关于 output_buffering 一些疑问
我在网上看到 这么篇文件
http://www.cnblogs.com/zemliu/archive/2012/05/11/2495293.html

上面说
PHP的输出顺序

1.打开了php输出缓存: echo,print -> php output_buffring -> server buffering -> browser buffering -> browser display

2.未打开php输出缓存: echo,print -> server buffering -> browser buffering -> browser display

这个是对的吗?????


还有
ob_flush()函数: 取出PHP buffering中的数据,放入server buffering
flush()函数: 取出Server buffering的数据,放入browser buffering

所以要强制把缓冲区的东西输出的时候,先写ob_flush()   在写 flush()
是这样吗


------解决方案--------------------
对的,是这样的

不过对于 ob_flush() 和 flush() 谁先谁后,要取决于的控制需要
echo 'a';
ob_flush();
flush();
sleep(1);

echo 'a';
flush();
ob_flush();
sleep(1);
的区别在于,前者立刻就看到 a,而后者要等一秒才看到
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn