Heim  >  Artikel  >  php教程  >  教你如何正确运用PHP函数flush()

教你如何正确运用PHP函数flush()

WBOY
WBOYOriginal
2016-06-13 11:09:451253Durchsuche

对于刚刚学习

1、Flush:刷新缓冲区的内容,输出。
函数格式:flush()

这个函数在PHP3中就出现了,是一个效率很高的函数,他有一个非常有用的功能就是刷新browser的cache.我们举一个运行效果非常明显的例子来说明PHP函数flush().

Example 2.

<ol class="dp-xml">
<li class="alt"><span><span class="tag"><span> ?php  </span></span></span></li>
<li>
<span>for($</span><span class="attribute">i</span><span> = </span><span class="attribute-value">1</span><span>; $i </span><span class="tag"><span>= 300; $i++ ) print(“ “);  </span></span>
</li>
<li class="alt"><span>// 这一句话非常关键,cache的结构<br>使得它的内容只有达到一定的大小才能从浏览器里输出  </span></li>
<li><span>// 换言之,如果cache的内容不达到<br>一定的大小,它是不会在程序执行完毕前输出的。经  </span></li>
<li class="alt"><span>// 过测试,我发现这个大小的底限是<br>256个字符长。这意味着cache以后接收的内容都会  </span></li>
<li><span>// 源源不断的被发送出去。  </span></li>
<li class="alt">
<span>For($</span><span class="attribute">j</span><span> = </span><span class="attribute-value">1</span><span>; $j </span><span class="tag"><span>= 20; $j++) {  </span></span>
</li>
<li><span>echo $j.”  </span></li>
<li class="alt"><span>”;  </span></li>
<li><span>flush(); //这一部会使cache新增的内容<br>被挤出去,显示到浏览器上  </span></li>
<li class="alt"><span>sleep(1); //让程序“睡”一秒钟,会让<br>你把效果看得更清楚  </span></li>
<li><span>}  </span></li>
<li class="alt">
<span class="tag">?></span><span> </span>
</li>
</ol>

PHP2000的最新的PHP聊天室就是用的这个技术,可惜的是源代码未公开。注:如果在程序的首部加入ob_implicit_flush()打开绝对刷新,就可以在程序中不再使用PHP函数flush(),这样做的好处是:提高效率!


Stellungnahme:
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