实例讲解PHP页面静态化


Posted in PHP onFebruary 05, 2018

页面静态化,顾名思义是将动态的PHP转化为静态的Html,流程如下图

实例讲解PHP页面静态化

用户访问index.php,如果存在index.html且在有效期内,则直接输出index.html,否则去生成index.html

file_put_contents()输出静态文件

ob_start()开启PHP缓冲区

ob_get_contents()获取缓冲区内容

ob_clean()清空缓冲区

ob_get_clean()相当于ob_get_contents()+ob_clean()

代码示例

<?php

if (file_exists('./html/index.html') && time() - filectime('./html/index.html') < 30) {
 require_once './html/index.html';
} else {
 // 引入数据库配置
 require_once "./config/database.php";
 // 引入Medoo类库
 require_once "./libs/medoo.php";
 // 实例化db对象
 $db = new medoo($config);
 // 获取数据
 $users = $db->select('user', ['uid', 'username', 'email']);
 // 引入模板
 require_once "./templates/index.php";
 // 写入html
 file_put_contents('./html/index.html', ob_get_contents());
}
PHP 相关文章推荐
PHP4实际应用经验篇(8)
Oct 09 PHP
phpfans留言版用到的install.php
Jan 04 PHP
php addslashes 函数详细分析说明
Jun 23 PHP
php cache类代码(php数据缓存类)
Apr 15 PHP
用PHP为SHOPEX增加日志功能代码
Jul 02 PHP
php实现获取文章内容第一张图片的方法
Nov 04 PHP
PHP编程中尝试程序并发的几种方式总结
Mar 21 PHP
mac下多个php版本快速切换的方法
Oct 09 PHP
php根据命令行参数生成配置文件详解
Mar 15 PHP
ThinkPHP框架整合微信支付之Native 扫码支付模式一图文详解
Apr 09 PHP
ThinkPHP框架下微信支付功能总结踩坑笔记
Apr 10 PHP
PHP实现简单用户登录界面
Oct 23 PHP
PHP使用ActiveMQ实例
Feb 05 #PHP
详解PHP中mb_strpos的使用
Feb 04 #PHP
详解PHP文件的自动加载(autoloading)
Feb 04 #PHP
PHP实现QQ登录的开原理和实现过程
Feb 04 #PHP
PHP实现正则表达式分组捕获操作示例
Feb 03 #PHP
php实现解析xml并生成sql语句的方法
Feb 03 #PHP
PHP删除数组中指定下标的元素方法
Feb 03 #PHP
You might like
咖啡与水的关系
2021/03/03 冲泡冲煮
linux下为php添加curl扩展的方法
2011/07/29 PHP
xss防御之php利用httponly防xss攻击
2014/03/21 PHP
php中的ini配置原理详解
2014/10/14 PHP
详解PHP+AJAX无刷新分页实现方法
2015/11/03 PHP
PHP简单实现解析xml为数组的方法
2018/05/02 PHP
javascript dom代码应用 简单的相册[firefox only]
2010/06/12 Javascript
javscript对象原型的一些看法
2010/09/19 Javascript
通过DOM脚本去设置样式信息
2010/09/19 Javascript
jQuery中get和post方法传值测试及注意事项
2014/08/08 Javascript
javascript实现类似java中getClass()得到对象类名的方法
2015/07/27 Javascript
jQuery简单获取键盘事件的方法
2016/01/22 Javascript
AngularJS ng-bind-template 指令详解
2016/07/30 Javascript
微信小程序 实现列表项滑动显示删除按钮的功能
2017/04/13 Javascript
nodejs操作mongodb的增删改查功能实例
2017/11/09 NodeJs
微信小程序 scroll-view实现锚点滑动的示例
2017/12/06 Javascript
解决Mac node版本升级失败的问题
2018/05/16 Javascript
Vue-CLI项目中路由传参的方式详解
2019/09/01 Javascript
Python实现多属性排序的方法
2018/12/05 Python
Python Sympy计算梯度、散度和旋度的实例
2019/12/06 Python
Python CSV文件模块的使用案例分析
2019/12/21 Python
pytorch-RNN进行回归曲线预测方式
2020/01/14 Python
python简单利用字典破解zip文件口令
2020/09/07 Python
利用python汇总统计多张Excel
2020/09/22 Python
python 实现表情识别
2020/11/21 Python
LEGO玩具英国官方商店:LEGO Shop GB
2018/03/27 全球购物
医药代表个人的求职信分享
2013/12/08 职场文书
幼儿园小班植树节活动方案
2014/03/04 职场文书
汉语言文学专业求职信
2014/06/19 职场文书
最美孝心少年事迹材料
2014/08/15 职场文书
群众路线教育实践活动的心得体会
2014/09/03 职场文书
学生自我鉴定格式及范文
2014/09/16 职场文书
2014领导班子正风肃纪思想汇报
2014/09/18 职场文书
批评与自我批评范文
2014/10/15 职场文书
中学生综合素质自我评价
2015/03/06 职场文书
MySql开发之自动同步表结构
2021/05/28 MySQL