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;