ob缓冲

ob缓冲是服务器向客户端响应数据时存储响应数据的临时空间

服务器在向客户端推送数据之前,不是一次性把所有的数据都给客户端,而是先pushob缓冲区域,再一点一点给客户端,减轻服务器的压力

 

1.1 开启ob缓冲

php.ini配置文件中找到output buferring

1.2 ob缓冲相关函数

 

ob_start() 开辟一块新的缓冲区域

 

只要ob_start()一次就会在PHP的缓存中开辟一块缓冲区域

 

而且,服务器输出的内容会先输出到缓冲区域,再给客户端响应

 

ob_clean() 清空缓冲区域

 

ob_get_contents() 获取缓冲区域里面的内容

ob_get_length() 获取缓冲区域内容长度

 

ob_flush() 将缓冲区域的内容直接刷出\输出

ob_get_flush() 获得缓冲区域刷出的内容

 

ob_clean():清空缓冲区域的内容

ob_get_clean():获得清空的缓冲区域的内容

1.3 ob缓冲处理器

 

ob缓冲处理器,就是在输出缓冲区域的内容之前,使用某个函数进行处理

 

通常我们会使用ob_gzhandler处理器进行压缩处理

1.4 ob多缓冲

 

我们可以在PHP里面开启多块缓冲区域ob_start()一次,就会在PHP里面创建一块缓冲区域,而且,将来ob_clean清空缓冲区域时,操作的是离开启缓冲最近那个缓冲区域

 

ob缓冲实现页面静态化

 

我们说过服务器响应给客户端的数据会先输出到缓冲区域

 

服务器向客户端响应数据的方式:echovar_dumprequireinclude

需求:查询商品列表,并生成静态化文件

解决方案

先将require_once加载的模板内容,保存到缓冲区域,再读取并输出到静态html文件

思考:如何将遍历之后的结果保存到静态的html文件中呢?

思路:先拿到替换之后的结果(遍历之后的结果)

 

 

 

最后,检查goods.html模板文件即可

 

 

 

 

 

 

 

posted @ 2018-09-13 16:14  L1230205  阅读(95)  评论(0编辑  收藏  举报