PHP使用OB缓存实现静态化功能示例


Posted in PHP onMarch 23, 2019

本文实例讲述了PHP使用OB缓存实现静态化功能。分享给大家供大家参考,具体如下:

实现步骤

1、创建测试数据表并且写入数据

2、实现后台的更新操作。使用OB缓存针对每一个内容生成对应的HTML文件

3、显示前台的数据信息

具体实现

①创建测试数据表并且写入数据(test.sql文件):

#创建数据表
create table news(
 id int auto_increment,
 title varchar(100) not null default '',
 body text,
 primary key(id)
)engine =myisam default charset=utf8;
#数据写入
insert into news values(null,'静态化','静态化可以减少服务器压力'),(null,'伪静态','伪静态能够满足SEO优化');

②实现后台的更新操作(admin.php文件)

<?php
 //具体的后台更新
 //获取所有的数据信息
 mysql_connect('127.0.0.1','root','123456');
 mysql_select_db('test');
 $sql='select * from news';
 $res = mysql_query($sql);
 while ($row=mysql_fetch_assoc($res)) {
 //针对每一条数据生成html文件
 ob_start();//开启OB缓存
?>
<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="utf-8">
 <title>静态化介绍</title>
</head>
<body>
 <h1><?php echo $row['title']; ?></h1>
 <div><?php echo $row['body']; ?></div>
</body>
</html>
<?php
 //获取OB缓存中的内容
 $str = ob_get_contents();
 //关闭OB缓存并且清空内容。因为如果不清空浏览器上会看到所有的数据结果
 ob_end_clean();
 //将信息写入到文件中 关于具体的文件目录及文件名称需要自定义
 //对于在实际项目中关于html文件的存储 一般都会使用年月日的格式存在
 file_put_contents($row['id'].'.html',$str);
}
?>

③实现前台数据显示(list.php文件):

<?php
 //显示列表
 //获取所有的数据信息
 mysql_connect('127.0.0.1','root','123456');
 mysql_select_db('test');
 $sql='select * from news';
 $res = mysql_query($sql);
?>
<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="utf-8">
 <title>静态化介绍</title>
</head>
<body>
 <h1>显示列表</h1>
 <table>
 <tr>
  <td>序号</td>
  <td>标题</td>
  <td>查看</td>
 </tr>
 <?php while ($row =mysql_fetch_assoc($res)) {?>
 <tr>
  <td><?php echo $row['id']; ?></td>
  <td><?php echo $row['title']; ?></td>
  <td><a href="<?php echo $row['id'];?>.html" rel="external nofollow" > 查看</a></td>
 </tr>
 <?php } ?>
 </table>
</body>
</html>

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
php 缩略图实现函数代码
Jun 23 PHP
PHP重定向的3种方式
Mar 07 PHP
PHP 使用MySQL管理Session的回调函数详解
Jun 21 PHP
ThinkPHP框架任意代码执行漏洞的利用及其修复方法
Jul 04 PHP
Yii基于数组和对象的Model查询技巧实例详解
Dec 28 PHP
php脚本运行时的超时机制详解
Feb 17 PHP
又拍云异步上传实例教程详解
Apr 19 PHP
PHP中读取文件的几个方法总结(推荐)
Jun 03 PHP
深入了解PHP中的Array数组和foreach
Nov 06 PHP
PHP 表单提交及处理表单数据详解及实例
Dec 27 PHP
PHP网页安全认证的实例详解
Sep 28 PHP
在 Laravel 中动态隐藏 API 字段的方法
Oct 25 PHP
Laravel如何自定义command命令浅析
Mar 23 #PHP
PHP使用mysqli同时执行多条sql查询语句的实例
Mar 22 #PHP
PHP中命名空间的使用例子
Mar 22 #PHP
PHP SESSION机制的理解与实例
Mar 22 #PHP
PHP析构函数destruct与垃圾回收机制的讲解
Mar 22 #PHP
PHP中的empty、isset、isnull的区别与使用实例
Mar 22 #PHP
PHP如何防止XSS攻击与XSS攻击原理的讲解
Mar 22 #PHP
You might like
PHP 获取远程网页内容的代码(fopen,curl已测)
2011/06/06 PHP
PHP中soap的用法实例
2014/10/24 PHP
ucenter中词语过滤原理分析
2016/07/13 PHP
详解Yii2.0使用AR联表查询实例
2017/06/16 PHP
基于win2003虚拟机中apache服务器的访问
2017/08/01 PHP
Jquery getJSON方法详细分析
2013/12/26 Javascript
chrome浏览器当表单自动填充时如何去除浏览器自动添加的默认样式
2015/10/09 Javascript
使用jQuery mobile库检测url绝对地址和相对地址的方法
2015/12/04 Javascript
基于jquery实现下拉框美化特效
2016/02/02 Javascript
bootstrap滚动监控器使用方法解析
2017/01/13 Javascript
SVG描边动画
2017/02/23 Javascript
JavaScript实现移动端轮播效果
2017/06/06 Javascript
Vue组件化通讯的实例代码
2017/06/23 Javascript
Vue.js学习记录之在元素与template中使用v-if指令实例
2017/06/27 Javascript
详解如何使用Node.js编写命令工具——以vue-cli为例
2017/06/29 Javascript
基于jQuery的表单填充实例
2017/08/22 jQuery
vue2.0+koa2+mongodb实现注册登录
2018/04/10 Javascript
JavaScript实用代码小技巧
2018/08/23 Javascript
Vue 之孙组件向爷组件通信的实现
2019/04/23 Javascript
vue中选中多个选项并且改变选中的样式的实例代码
2020/09/16 Javascript
Python中计算三角函数之cos()方法的使用简介
2015/05/15 Python
在Python的Django框架中编写编译函数
2015/07/20 Python
python模块之time模块(实例讲解)
2017/09/13 Python
解决tensorflow测试模型时NotFoundError错误的问题
2018/07/27 Python
详解python 3.6 安装json 模块(simplejson)
2019/04/02 Python
Python编程实现tail-n查看日志文件的方法
2019/07/08 Python
flask框架渲染Jinja模板与传入模板变量操作详解
2020/01/25 Python
使用matplotlib的pyplot模块绘图的实现示例
2020/07/12 Python
浅谈盘点5种基于Python生成的个性化语音方法
2021/02/05 Python
优秀企业获奖感言
2014/02/01 职场文书
有趣的广告词
2014/03/18 职场文书
餐饮商业计划书范文
2014/04/29 职场文书
欢迎标语大全
2014/06/21 职场文书
优秀本科毕业生自荐信
2014/07/04 职场文书
2015高中教师个人工作总结
2015/07/21 职场文书
车辆安全隐患排查制度
2015/08/05 职场文书