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读注册表
Oct 09 PHP
PHP 和 MySQL 基础教程(四)
Oct 09 PHP
谈谈关于php的优点与缺点
Apr 11 PHP
php导入导出excel实例
Oct 25 PHP
php递归删除目录下的文件但保留的实例分享
May 10 PHP
Codeigniter校验ip地址的方法
Mar 21 PHP
在Linux系统的服务器上隐藏PHP版本号的方法
Jun 06 PHP
变量在 PHP7 内部的实现(二)
Dec 21 PHP
PHP MYSQL实现登陆和模糊查询两大功能
Feb 05 PHP
PHP载入图像imagecreatefrom_gif_jpeg_png系列函数用法分析
Nov 14 PHP
PHP实现将几张照片拼接到一起的合成图片功能【便于整体打印输出】
Nov 14 PHP
PHP面向对象程序设计继承用法简单示例
Dec 28 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
11个PHP 分页脚本推荐
2011/08/15 PHP
根据中文裁减字符串函数的php代码
2013/12/03 PHP
php基于双向循环队列实现历史记录的前进后退等功能
2015/08/08 PHP
日期函数扩展类Ver0.1.1
2006/09/07 Javascript
Exitjs获取DataView中图片文件名
2009/11/26 Javascript
简短几句 通俗解释javascript的闭包
2011/01/17 Javascript
jquery实现邮箱自动填充提示功能
2015/11/17 Javascript
JS实现密码框根据焦点的获取与失去控制文字的消失与显示效果
2015/11/26 Javascript
Js删除数组中某一项或几项的几种方法(推荐)
2016/07/27 Javascript
半个小时学json(json传递示例)
2016/12/25 Javascript
vue.js实现刷新当前页面的方法教程
2017/07/05 Javascript
vue引入swiper插件的使用实例
2017/07/19 Javascript
JS库之Particles.js中文开发手册及参数详解
2017/09/13 Javascript
Angular4学习教程之HTML属性绑定的方法
2018/01/04 Javascript
jQuery实现点击自身以外区域关闭弹出层功能完整示例【改进版】
2018/07/31 jQuery
bootstrap下拉框动态赋值方法
2018/08/10 Javascript
js实现星星打分效果
2020/07/05 Javascript
python self,cls,decorator的理解
2009/07/13 Python
python基础教程之udp端口扫描
2014/02/10 Python
Python实现多进程共享数据的方法分析
2017/12/04 Python
python数字图像处理实现直方图与均衡化
2018/05/04 Python
python实现将一维列表转换为多维列表(numpy+reshape)
2019/11/29 Python
python使用python-pptx删除ppt某页实例
2020/02/14 Python
keras导入weights方式
2020/06/12 Python
python中strip(),lstrip(),rstrip()函数的使用讲解
2020/11/17 Python
详解Django中的FBV和CBV对比分析
2021/03/01 Python
基于HTML5的WebSocket的实例代码
2018/08/15 HTML / CSS
HTML5 device access 设备访问详解
2018/05/24 HTML / CSS
美国知名的网上鞋类及相关服装零售商:Shoes.com
2017/05/06 全球购物
考试退步检讨书
2014/01/15 职场文书
高中教师个人工作总结
2015/02/10 职场文书
2015年乡镇信访工作总结
2015/04/07 职场文书
交通处罚决定书
2015/06/24 职场文书
MySQL查看表和清空表的常用命令总结
2021/05/26 MySQL
CSS实现章节添加自增序号的方法
2021/06/23 HTML / CSS
详解JavaScript的计时器和按钮效果设置
2022/02/18 Javascript