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和ACCESS写聊天室(九)
Oct 09 PHP
php 大数据量及海量数据处理算法总结
May 07 PHP
php 缩略图实现函数代码
Jun 23 PHP
浅析php中常量,变量的作用域和生存周期
Aug 10 PHP
PHP实现通过中文字符比率来判断垃圾评论的方法
Oct 20 PHP
PHP常用处理静态操作类
Apr 03 PHP
利用php实现一周之内自动登录存储机制(cookie、session、localStorage)
Oct 31 PHP
php 防止表单重复提交两种实现方法
Nov 03 PHP
php实现购物车功能(以大苹果购物网为例)
Mar 09 PHP
PHP观察者模式示例【Laravel框架中有用到】
Jun 15 PHP
PHP如何通过表单直接提交大文件详解
Jan 08 PHP
ThinkPHP5.1的权限控制怎么写?分享一个AUTH权限控制
Mar 09 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+mysql删除指定编号员工信息的方法
2015/01/14 PHP
php实现俄罗斯乘法实例
2015/03/07 PHP
一张表搞清楚php is_null、empty、isset的区别
2015/07/07 PHP
thinkphp隐藏index.php/home并允许访问其他模块的实现方法
2016/10/13 PHP
php上传excel表格并获取数据
2017/04/27 PHP
PHP实现长轮询消息实时推送功能代码实例讲解
2021/02/26 PHP
js控制框架刷新
2008/08/01 Javascript
实现JavaScript中继承的三种方式
2009/10/16 Javascript
ext jquery 简单比较
2010/04/07 Javascript
JSON 数据格式介绍
2012/01/13 Javascript
javascript实现多栏闭合展开式广告位菜单效果实例
2015/08/05 Javascript
AngularJS页面访问时出现页面闪烁问题的解决
2016/03/06 Javascript
jQuery 获取多选框的值及多选框中文的函数
2016/05/16 Javascript
jQuery实现微信长按识别二维码功能
2016/08/26 Javascript
详解如何在Vue2中实现组件props双向绑定
2017/03/29 Javascript
原生js实现form表单序列化的方法
2018/08/02 Javascript
利用Promise自定义一个GET请求的函数示例代码
2019/03/20 Javascript
微信小程序 scroll-view 水平滚动实现过程解析
2019/10/12 Javascript
webpack常用构建优化策略小结
2019/11/21 Javascript
Python的Django框架中使用SQLAlchemy操作数据库的教程
2016/06/02 Python
利用Python脚本生成sitemap.xml的实现方法
2017/01/31 Python
python PyTorch预训练示例
2018/02/11 Python
Python3.5文件修改操作实例分析
2019/05/01 Python
浅谈python多进程共享变量Value的使用tips
2019/07/16 Python
pip安装tensorflow的坑的解决
2020/04/19 Python
一个入门级python爬虫教程详解
2021/01/27 Python
虚拟环境及venv和virtualenv的区别说明
2021/02/05 Python
浅谈CSS3动画的回调处理
2016/07/21 HTML / CSS
奇怪的鱼:Weird Fish
2018/03/18 全球购物
意大利中国电子产品购物网站:Geekmall.com
2019/09/30 全球购物
面向游戏玩家和书呆子的极客订阅盒:Loot Crate
2020/11/25 全球购物
Columbia Sportswear法国官网:全球户外品牌
2020/09/25 全球购物
使用索引(Index)有哪些需要考虑的因素
2016/10/19 面试题
员工培训心得体会
2013/12/30 职场文书
联谊会主持词
2014/03/26 职场文书
目标责任书范本
2014/04/16 职场文书