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程序设计有所帮助。
相关推荐
学习web前端 2020-11-09
天空一样的蔚蓝 2020-10-23
curiousL 2020-08-03
sochrome 2020-07-29
SoarFly00 2020-06-28
LeoHan 2020-06-02
GimmeS 2020-05-15
逸璞丷昊 2020-03-08
DAV数据库 2020-05-07
Vampor 2020-05-01
ROES 2020-04-22
lifeforbug 2020-03-18
zhangwentaohh 2020-03-04
Freshairx 2020-11-10
liuyuchen 2020-10-27
chenhaimeimeng 2020-08-15
东哥笔记 2020-08-14
幸运小侯子 2020-08-14
vanturman 2020-08-01
shawls 2020-07-29
buaichidoufu 2020-07-28
guoyun0 2020-07-19
LinuxJob 2020-06-26
韩学敏 2020-06-17