PHP中的ob_start()等函数

PHP中常用的几个 Output Control 函数为:

1.ob_start()         //  开启缓冲区

2.ob_flush()         //  送出缓冲区内容
3.ob_end_flush()     //  送出缓冲区内容并关闭缓冲区

3.ob_clean()         //  清空缓冲区内容
4.ob_end_clean()     //  清空缓冲区内容并关闭缓冲区

5.ob_get_contents()  //  得到缓冲区的内容

ob_start() 函数会打开输出缓冲区,打开后,脚本里所有输出的内容,包括 echo 、print、include、require 等,都会首先保存在服务器的缓冲区中。在 php.ini中,output_buffering 默认为 4096,也就是说缓冲区是默认开启的,并且大小为 4096字节,即4KB。当缓冲区写满 或者 执行了 ob_flush() 或者 ob_end_flush() 或者 脚本执行结束,才会把缓冲区内容发送给浏览器。

虽然 clean 和 flush 都会使缓冲区清空,但是 clean只是单纯地清空缓冲区,而 flush是把缓冲区的内容送出去。 因此,想获得缓冲区内容就必须在它们之前执行 ob_get_contents() 。

这些函数通常用在 页面静态化中,如果一个页面实时性不高,那么我们可以将渲染好的页面通过 file_put_contents() 与 ob_get_contents() 保存为 .html文件,之后客户直接访问这个静态文件就可以了。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值