php中如何使用缓存(PHP使用OB缓存实现静态化功能示例)
类别:编程学习 浏览量:1643
时间:2022-04-02 10:34:36 php中如何使用缓存
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> <li><?php echo $row [ 'body' ]; ?></li> </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程序设计有所帮助。
您可能感兴趣
- thinkphp5框架怎么打开(thinkphp5.1框架中容器Container和门面Facade的实现方法分析)
- php教程字符串类型进阶技术教程(PHP中有关长整数的一些操作教程)
- php判断类的属性的修饰(PHP whois查询类定义与用法示例)
- php递归实现(PHP递归统计系统中代码行数)
- thinkphp中view视图的作用(Thinkphp5.0框架视图view的模板布局用法分析)
- phpstudy如何部署在linux上(phpstudy linux面板CC防护功能使用教程)
- thinkphp框架详解(thinkphp3.2框架中where条件查询用法总结)
- php数组是怎么实现的(PHP里的$_GET数组介绍)
- phpredis怎么测试成功(PHP+redis实现的限制抢购防止商品超发功能详解)
- php根据名称规则判断文件是否存在(PHP中上传文件打印错误错误类型分析)
- php怎么实现多线程(PHP实现的多进程控制demo示例)
- thinkphp微信开发教程(微信公众平台开发教程④ ThinkPHP框架下微信支付功能图文详解)
- 自己在做项目过程中的php知识(PHP+Oracle本地开发环境搭建方法详解)
- web项目部署到阿里云服务器上(阿里云的WindowsServer2016上部署php+apache)
- php哪个函数具有字符串截取功能(php字符串截取函数mb_substr用法实例分析)
- php脚本控制方法(php swoole多进程/多线程用法示例基于php7nts版)
- 中华第一楷 张瑞龄 86岁高龄,苦练楷书71年,一幅字卖593万(中华第一楷张瑞龄)
- 冯骥才 年意(冯骥才年意)
- ()
- 百事大吉蓝底 绿底手机高清壁纸(绿底手机高清壁纸)
- 蓝底证件照怎么制作 证件照换底色 换尺寸快速搞定(蓝底证件照怎么制作)
- 你喜欢足球吗 足球如何点亮世界的(足球如何点亮世界的)
热门推荐
- 单元测试中Assert类
- auto.js源码分享(最新热门脚本Autojs源码分享)
- python操作json库(Python将json文件写入ES数据库的方法)
- dedecms5.7使用教程(dedecms v5.7提示php.ini register_globals must is Off错误的解决方法)
- mysqlbinlog怎么分析(MySQL中使用binlog时格式该如何选择)
- h5本地存储对比(H5离线存储Manifest原理及使用)
- 常用SQL查询语句
- dedecms命名规则(dedecms utf-8 出现乱码问题的解决方法之一)
- html5定位教学(Html5 webview元素定位工具的实现)
- sql如何合并多个表中的数据(SQL 列不同的表查询结果合并操作)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9