1.基本语法:
ob_start ()
参数:ob_start()函数可以接受一堆可选参数,如下所示:
● 回调函数(Callback function):这是一个可选参数,它需要一个获取输出缓冲区内容并返回一个字符串的函数,该字符串将被发送到浏览器进行渲染。回调函数通常用于压缩HTML内容。
● 块大小(Chunk size):这是另一个可选参数,它在缓冲区已满或超出时立即设置提供的大小和输出的输出缓冲区大小。
● 标志(Flags):这是另一个可选参数,它接受位掩码来控制可以在输出缓冲区上实现的操作。传递此参数以限制访问。默认权限允许访问清理,刷新和删除缓冲区。
返回类型:ob_start()函数在成功时返回TRUE,否则返回FALSE。
2.代码示例:
<?php header("content-type:text/html;charset=utf-8");function callback($buffer){//返回缓冲区内的所有东西return (strtoupper($buffer.",javascript,html,css!")); } ob_start("callback"); echo "Hello php"; ob_end_flush(); ?>
输出:
说明:
●想要使用缓冲区,需要先启动缓冲区。
●输出缓冲标志可以是四种类型:
1、PHP_OUTPUT_HANDLER_CLEANABLE(only clean)
2、PHP_OUTPUT_HANDLER_FLUSHABLE(only flush)
3、PHP_OUTPUT_HANDLER_REMOVABLE(only remove)
4、PHP_OUTPUT_HANDLER_STDFLAGS(allowed every operation).
●输出缓冲区是可堆叠的,因此,如果按顺序关闭/刷新,则允许嵌套的ob_start()方法并按需要工作。
●ob_end_flush()函数是在结束(发送)输出缓冲区的内容后,用来关闭输出缓冲区的。