php ob_get_length缓冲与获取缓冲长度
file_get_contents() 函数把整个文件读入一个字符串中,和 file() 一样,不同的是 file_get_contents() 把文件读入一个字符串.
file_get_contents() 函数是用于将文件的内容读入到一个字符串中的首选方法,如果操作系统支持,还会使用内存映射技术来增强性能.
语法: file_get_contents(path,include_path,context,start,max_length)
ob_start(); //打开缓冲区
echo "hello" ; //输出内容
$out1 = ob_get_contents(); //获得缓冲区内容
echo "world" ; //输出内容
$out2 =ob_get_contents(); //再次获得缓冲区内容
ob_end_clean(); //清空缓冲区,并关闭
echo $out1 ; //输出第一次获得的结果
echo "<br>" ; //开源代码phpfensi.com
echo $out2 ; //输出第二次获得的结果,以比较该代码在输出缓冲设置为开启时使用(output_buffering=on)
列出输出头部信息:print_r(ob_list_handlers());
刷新缓冲区数据,返回数据并且关闭缓冲区:$buffer=ob_get_flush();
把缓冲区数据写入文件:file_put_contents('buffer.txt',$buffer);
列出输出头部信息:print_r(ob_list_handlers());
获取缓冲区长度,实例代码如下:
//打开缓冲区
ob_start();
//输出内容
echo "hello " ;
//获取缓冲区长度
$len1 =ob_get_length();
//再输出内容
echo "world" ;
//再次获取缓冲区的长度
$len2 =ob_get_length();
//清空缓冲区,并关闭缓冲
ob_end_clean();
//输出第一次获取的长度
echo $len1 ;
echo "<br>" ;
//输出第二次获取的长度以比较两次不同的结果
echo $len2 ;