当前位置: 首页 > 编程笔记 >

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

华涵意
2023-03-14
本文向大家介绍PHP使用OB缓存实现静态化功能示例,包括了PHP使用OB缓存实现静态化功能示例的使用技巧和注意事项,需要的朋友参考一下

本文实例讲述了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面向对象程序设计入门教程》、《PHP基本语法入门教程》、《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

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

 类似资料:
  • 本文向大家介绍利用php的ob缓存机制实现页面静态化方法,包括了利用php的ob缓存机制实现页面静态化方法的使用技巧和注意事项,需要的朋友参考一下 首先介绍一下php中ob缓存常用到的几个常用函数 ob_start():开启缓存机制 ob_get_contents():获取ob缓存中的内容 ob_clean()清除ob缓存中的内容,但不关闭缓存 ob_end_clean() 清除ob缓存中的内容,

  • 本文向大家介绍使用ob系列函数实现PHP网站页面静态化,包括了使用ob系列函数实现PHP网站页面静态化的使用技巧和注意事项,需要的朋友参考一下 将PHP的执行页面预先转换成HTML,是所谓的PHP静态化方法之一。 其他还有模板替换法,opcache等方法。 静态化的作用: 提高网站的响应速度,降低服务器的负载; 用于搜索引擎的SEO; 利用PHP输出buffer直接写成html,定时后台定时扫一遍

  • 本文向大家介绍PHP ob缓存以及ob函数原理实例解析,包括了PHP ob缓存以及ob函数原理实例解析的使用技巧和注意事项,需要的朋友参考一下 ob缓存介绍 ob是output buffering的简称,输出缓冲区,缓冲区是通过php.ini中的output_buffering变量控制的。其默认值是off,可以设置为on来打开buffer。打来buffer后,即便程序中没有用ob函数,实际上代码也

  • 本文向大家介绍PHP内存缓存功能memcached示例,包括了PHP内存缓存功能memcached示例的使用技巧和注意事项,需要的朋友参考一下 下文简单介绍了memcached类的应用示例,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。 一、memcached 简介 在很多场合,我们都会听到 memcached 这个名字,但很多同学只是听过,并没有用过或实际了解过,只知道它是一个很不错的东东。

  • 本文向大家介绍示例vue 的keep-alive缓存功能的实现,包括了示例vue 的keep-alive缓存功能的实现的使用技巧和注意事项,需要的朋友参考一下 本篇文章主要介绍了vue 的keep-alive缓存功能的实现,写的十分的全面细致,具有一定的参考价值,对此有需要的朋友可以参考学习下。如有不足之处,欢迎批评指正。 <keep-alive>是Vue的内置组件,能在组件切换过程中将状态保留在

  • 问题内容: 我的表很少,条目也很少,它们永远不会动态更改。所以我想将整个表缓存在内存中以减少DB的负载。我可以通过一个静态Map并将该地图填充到一个静态块中轻松实现这一目标。 我想知道Ehcache +hibernate是否可以更有效地实现相同的效果? 问题答案: 真正的二级缓存相对于静态映射的优点是,您仍可以通过使用Hibernate会话(或实体管理器)来保持定义,访问和遍历实体的相同方法,从而