ob缓冲是做事器向客户端相应数据时,存储相应数据的临时空间
做事器在向客户端推送数据之前,不是一次性把所有的数据都给客户端,而是先push到ob缓冲区域,再一点一点给客户端,减轻做事器的压力
开启ob缓冲
在php.ini配置文件中,找到output buferring
打开OB缓冲on,和设置缓冲大小
ob缓冲的干系函数
ob_start() 开辟一块新的缓冲区域
只要ob_start()一次,就会在PHP的缓存中开辟一块缓冲区域
而且,做事器输出的内容会先输出到缓冲区域,再给客户端相应
ob_clean() 清空缓冲区域
ob_get_contents() 获取缓冲区域里面的内容
ob_get_length() 获取缓冲区域内容的长度
ob_flush() 将缓冲区域的内容直接刷出\输出
ob_get_flush() 得到缓冲区域刷出的内容
ob_clean():清空缓冲区域的内容
ob_get_clean():得到清空的缓冲区域的内容
ob缓冲处理器
ob 缓冲处理器,便是在输出缓冲区域的内容之前,利用某个函数进行处理
常日我们会是利用ob_gzhandler处理器进行压缩处理
演示一下:
先看一个未利用处理器处理的输出
输出的数据大小是:68.6KB
再看一个利用ob_gzhandler处理器压缩处理之后的结果:
压缩之后的数据大小是:449B
ob多缓冲
机制解释:
我们可以在PHP里面开启多块缓冲区域,每ob_start()一次,就会在PHP里面创建一块缓冲区域,而且,将来ob_clean清空缓冲区域时,操作的是离开启缓冲最近那个缓冲区域
关于ob就先容这些,在项目中可以用来页面静态化