实例讲解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 相关文章推荐
浅谈Windows下 PHP4.0与oracle 8的连接设置
Oct 09 PHP
php邮件发送,php发送邮件的类
Mar 24 PHP
PHP读取网页文件内容的实现代码(fopen,curl等)
Jun 23 PHP
比较详细PHP生成静态页面教程
Jan 10 PHP
基于php iconv函数的使用详解
Jun 09 PHP
浅析php数据类型转换
Jan 09 PHP
php实现使用正则将文本中的网址转换成链接标签
Dec 03 PHP
PHP转换文本框内容为HTML格式的方法
Jul 20 PHP
分享一个漂亮的php验证码类
Sep 29 PHP
PHP中抽象类,接口功能、定义方法示例
Feb 26 PHP
PHP面向对象程序设计模拟一般面向对象语言中的方法重载(overload)示例
Jun 13 PHP
laravel框架模型中非静态方法也能静态调用的原理分析
Nov 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
模仿OSO的论坛(二)
2006/10/09 PHP
php 修改上传文件大小限制实例详解
2016/10/23 PHP
jquery复选框checkbox实现删除前判断
2014/04/20 Javascript
js 调用百度地图api并在地图上进行打点添加标注
2014/05/13 Javascript
浅谈javascript获取元素transform参数
2015/07/24 Javascript
阻止表单提交按钮多次提交的完美解决方法
2016/05/16 Javascript
微信小程序 实战小程序实例
2016/10/08 Javascript
js控制li的隐藏和显示实例代码
2016/10/15 Javascript
JS日期对象简单操作(获取当前年份、星期、时间)
2016/10/26 Javascript
基于JavaScript实现购物车功能
2017/02/07 Javascript
原生js二级联动效果
2017/06/20 Javascript
vue自定义全局组件(自定义插件)的用法
2018/01/30 Javascript
使用Jenkins部署React项目的方法步骤
2019/03/11 Javascript
小程序开发之模态框组件封装
2020/04/23 Javascript
[53:52]OG vs EG 2018国际邀请赛淘汰赛BO3 第二场 8.23
2018/08/24 DOTA
[04:05]TI9战队采访 - Natus Vincere
2019/08/22 DOTA
python 查找文件夹下所有文件 实现代码
2009/07/01 Python
Python基类函数的重载与调用实例分析
2015/01/12 Python
Python的Django框架中URLconf相关的一些技巧整理
2015/07/18 Python
Pycharm代码无法复制,无法选中删除,无法编辑的解决方法
2018/10/22 Python
Python两个字典键同值相加的几种方法
2019/03/05 Python
Python实现的多进程拷贝文件并显示百分比功能示例
2019/04/09 Python
Python如何使用argparse模块处理命令行参数
2019/12/11 Python
基于Modernizr 让网站进行优雅降级的分析
2013/04/21 HTML / CSS
Sofmap官网:日本著名的数码电器专卖店
2017/05/19 全球购物
材料物理专业大学毕业生求职信
2013/10/15 职场文书
电子商务应届生求职信
2013/11/16 职场文书
五年级学生评语
2014/04/22 职场文书
服务之星事迹材料
2014/05/03 职场文书
会展策划与管理专业求职信
2014/06/09 职场文书
群众路线自查自纠工作情况报告
2014/10/28 职场文书
公司员工安全协议书
2014/11/21 职场文书
法制教育讲座心得体会
2016/01/14 职场文书
人生哲理妙语30条:淡写流年,笑过人生
2019/09/04 职场文书
html实现弹窗的实例
2021/06/09 HTML / CSS
python非标准时间的转换
2021/07/25 Python