2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > 解析php如何利用ob缓存机制实现页面静态化解决方案

解析php如何利用ob缓存机制实现页面静态化解决方案

时间:2018-09-19 18:40:35

相关推荐

解析php如何利用ob缓存机制实现页面静态化解决方案

后端开发|php教程

php,页面,实现

后端开发-php教程

php 笑话 源码,vscode快捷键,ubuntu 搜狗,jdk与tomcat,sqlite if函数,网页设计师的前途,sql连接万网数据库,服务器加挂硬盘,宝baocms短信接口插件,jquery是前端框架吗,.net爬虫,文件上传 php,优化seo软件,springboot整合redis集群,html字体标签,做个带后台网站价格,网页上图片拉长,外卖单模板下载,网站后台的作用,微赞专题页面,ssh工资管理系统文档,实现ofdm程序lzw

将PHP的执行页面预先转换成HTML,是所谓的PHP静态化方法之一。

微信赛龙舟游戏源码,ubuntu sd烧写,tomcat视频文件部署,南京爬虫集团,php开发心得,亭湖区seo优化盐城辰娇信息lzw

其他还有模板替换法,opcache等方法。

小的社交类app源码,vscode桌面应用程序,ubuntu上 jdk,重置tomcat配置环境,夏季爬虫有毒,php的8种数据类型,韶关市公司seo优化平台,搜索全球php网站有哪些lzw

静态化的作用:

提高网站的响应速度,降低服务器的负载;

用于搜索引擎的SEO;

利用PHP输出buffer直接写成html,定时后台定时扫一遍网站,是比较容易实现的网页静态化。

静态化之前:

<?php

for($i=0;$i<1000;$i++){

echo “bull

“;

}

?>

静态化:

<?php

ob_start();

for($i=0;$i<1000;$i++){

echo “bull

“;

}

$str = ob_get_contents();

ob_end_clean();

$fp = fopen(“test.html”,”w”);

fwrite($fp,$str);

fclose($fp);

echo “

success write“;

?>

该段代码就会预先形成一个test.html,说白了其实就是用空间换取时间,像新闻类网站,发布的内容基本上写完是不会变了,比较适合静态化成html。

用户访问的时候就direct到这个html页面上就可以了。

首先介绍一下php中ob缓存常用到的几个常用函数

ob_start:开启缓存机制

ob_get_contents:获取ob缓存中的内容

ob_clean清除ob缓存中的内容,但不关闭缓存

ob_end_clean() 清除ob缓存中的内容,并关闭缓存

ob_flush 清空缓存,输出内容,但不关闭缓存

ob_end_flush 清空缓存,输出内容,并关闭缓存

flush强制刷新输出缓存中的内容

按照http协议的规定,回应内容不能在回应头之前输出,所以,如果在header函数前面有内容输出,就会出现错误,但使用了ob_start()后就会将回应内容先放在ob缓存中,不会再消息头发送之前被发送,就解决了header报错的问题!

下面说一下用php自带的ob缓存机制实现页面静态化的方法

代码学堂php

1

如上述代码所示:

将我们查询到的内容直接保存到html文件中,如果文件存在,之间输出,如果不存在,则访问数据库,执行对应的查询过程

如果要设置文件的过期时间,可以在if语句里面加一个判断条件,用于判断缓存文件是否过期,time-设置的过期时间

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。