------------------------------------------------------------
可能现在大家对ob_start()的功能有了一定的了解,上面的一个例子看似简单,但实际上已经掌
握了使用ob_start()的要点。
<1>.使用ob_start打开browser的cache,这样可以保证cache的内容在你调用flush
(),ob_end_flush()(或程序执行完毕)之前不会被输出。
<2>.现在的你应该知道你所拥有的优势:可以在任何输出内容后面使用header,setcookie以及
session,这是ob_start一个很大的特点;也可以使用ob_start的参数,在cache被写入后,然后
自动运行命令,比如ob_start("ob_gzhandler");而我们最常用的做法是用ob_get_contents()得
到cache中的内容,然后再进行处理……
<3>.当处理完毕后,我们可以使用各种方法输出,flush(),ob_end_flush(),以及等到程序执行完
毕后的自动输出。当然,如果你用的是ob_get_contents(),那么就要你自己控制输出方式了。
来,让我们看看能用ob系列函数做些什么……
一、 静态模版技术
简介:所谓静态模版技术就是通过某种方式,使得用户在client端得到的是由PHP产生的html页
面。如果这个html页面不会再被更新,那么当另外的用户再次浏览此页面时,程序将不会再调用
PHP以及相关的数据库,对于某些信息量比较大的网站,例如sina,163,sohu。类似这种的技术带
来的好处是非常巨大的。
我所知道的实现静态输出的有两种办法:
<1>.通过y10k修改的phplib的一个叫template.inc.php类实现。
<2>.使用ob系列函数实现。
对于第一种方法,因为不是这篇文章所要研究的问题,所以不再赘述。
我们现在来看一看第二种方法的具体实现:
以下为引用的内容:
Example 4. ob_start();//打开缓冲区 |
这样,所谓的静态模版就很容易的被实现了……
二、 捕捉输出
(举报)