Heim > Backend-Entwicklung > PHP-Tutorial > 缓冲区问题求救

缓冲区问题求救

WBOY
Freigeben: 2016-06-06 20:11:43
Original
1041 Leute haben es durchsucht

php中ob是关闭的,我想问下在关闭的情况下,一个echo是经过php缓冲区到系统服务器缓冲区到浏览器缓冲区的。如果是开启了过程是怎样的?还是我理解错了?

回复内容:

php中ob是关闭的,我想问下在关闭的情况下,一个echo是经过php缓冲区到系统服务器缓冲区到浏览器缓冲区的。如果是开启了过程是怎样的?还是我理解错了?

ob指的是输出控制,并不是指缓冲,打开ob后,你就可以控制php中输出的内容何时发送给浏览器了。
给你举个例子:

不开obecho '1' -> send '1' to browser -> echo '2' -> send '2' to browser

obecho '1' -> do nothing -> echo '2' -> do nothing -> flush -> send '12' to browser

开启ob,下列程序会有一条条输出特效

<code><?php if(ob_get_level()==0)      //判断缓冲区等级,如果没有活动缓冲区
ob_start();
for($i=0;$i<10;$i++)      //循环执行操作
{
    echo "$i:line to show.<br>";    //输出内容
    echo str_pad('',1025);    //输出生成的字符串,如果字符串过短不会有效果。

    ob_flush();       //发送缓冲区数据
    flush();        //刷新缓冲区
    sleep(1);       //暂停1秒
}
echo "done.";       //输出操作完成标记
ob_end_flush();       //发送缓冲区数据,并关闭缓冲区
?>
</code>
Nach dem Login kopieren
Verwandte Etiketten:
php
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage