这篇文章主要为大家详细介绍了PHP利用output buffering缓存及程序缓存的深入分析,具有一定的参考价值,可以用来参考一下。
感兴趣的小伙伴,下面一起跟随四海网的小玲来看看吧!
下面测试ob缓存和程序缓存:代码如下:
echo "php";
header("content-type:text/html;charset='utf-8'");
echo 'ok';
代码如下:
ob_start();
echo "php";
header("content-type:text/html;charset='utf-8'");
echo 'ok';
代码如下:
ob_start();
echo "php";
header("content-type:text/html;charset='utf-8'");
echo 'ok';
echo '<hr/>';
$ob=ob_get_contents();
echo $ob;
Ob_get_contents()只是取得ob缓存里的内容而不清楚它们
Ob_get_contents()必须在ob缓存没有清除前使用
代码4:
代码如下:
ob_start();
echo "php";
ob_clean();//清除缓存内容但不关闭缓存区,还能用(往里添加东西)
header("content-type:text/html;charset='utf-8'");
echo 'ok';
echo '<hr/>';
$ob=ob_get_contents();
echo $ob;
代码5:
代码如下:
ob_start();
echo "php";
ob_end_clean();//清空缓存内容并关闭缓存区,ob_get_contents取不到内容
header("content-type:text/html;charset='utf-8'");
echo 'ok';
echo '<hr/>';
$ob=ob_get_contents();
echo $ob;
代码6:
代码如下:
ob_start();
echo "php";
ob_end_flush();//把缓存送到程序缓存内并关闭ob缓存
header("content-type:text/html;charset='utf-8'");
echo 'ok';
echo '<hr/>';
$ob=ob_get_contents();
echo $ob;
代码如下:
ob_start();
echo "php";
ob_flush();//把Ob 缓存送到程序缓存,不关闭ob缓存
header("content-type:text/html;charset='utf-8'");
echo 'ok';
echo '<hr/>';
$ob=ob_get_contents();
echo $ob;
Ob_clean()
清空ob缓存内容但不关闭
Ob_get_flush()
冲刷出缓存到程序缓存,关闭ob缓存
代码8:
代码如下:
Ob_start();
echo 'abc';
header("content-type:text/html;charset='utf-8'");
echo 'hello';
Ob_flush();
echo 'aa';
echo ob_get_contents();
//abchelloaaaa
代码如下:
ob_start();
echo 'a';
flush();//把Ob缓存冲刷到程序缓存再冲刷到浏览器输出,不影响ob缓存
echo ob_get_contents();
//aa
代码如下:
ob_start();
echo 'a';
ob_flush();//把Ob缓存冲刷到程序缓存,ob里没有了缓存内容
echo "<br/>ob_con".ob_get_contents();
//a 是按正常输出的,Ob里没内容
代码如下:
echo str_repeat(" ",1024);//一些版本的 Microsoft Internet Explorer 只有当接受到的256个字节以后才开始显示该页面,所以必须发送一些额外的空格来让这些浏览器显示页面内容。
for($i=0;$i<5;$i++){
echo $i;
echo "<br/>";
sleep(1);
flush();
}
本文来自:http://www.q1010.com/173/14965-0.html
注:关于PHP利用output buffering缓存及程序缓存的深入分析的内容就先介绍到这里,更多相关文章的可以留意四海网的其他信息。
关键词:缓存
四海网收集整理一些常用的php代码,JS代码,数据库mysql等技术文章。