ob_start([string output_callback])- 打开输出缓冲区
所有的输出信息不在直接发送到浏览器,而是保存在输出缓冲区里面,可选得回调函数用于处理输出结果信息。
ob_end_flush - 结束(发送)输出缓冲区的内容,关闭输出缓冲区
使用output control 函数可以让自由控制脚本中数据的输出,这在我们想在header之前输出时很有用。
复制代码 代码如下:
<?php
ob_start(); //打开缓冲区
echo "输出n"; //输出
header("头部信息");
ob_end_flush();//输出全部内容到浏览器
?>
个人使用ob多数是在生成静态html的时候,当某个页面不会再刷新,当其他的用户再次浏览此页面时,程序将不会再调用php以及相关的数据库教程。这时候使用ob生成html就是很好的做法。
复制代码 代码如下:
<?php
ob_start();
if(@readfile($tem_path)){ //把指定路径中的内容写入缓存中。如果不存在返回false(就是某个你想转换成html的php文件)
$content= ob_get_contents(); //得到缓存中的内容
$fp = fopen("1.html", "w"); //创建一个文件,并打开,准备写入
fwrite($fp, $content); //把php页面的内容全部写入1.html
}
fclose($fp);
ob_clean();
?>