PHP实现页面静态化(简单版)

来源:互联网 发布:网络医生兼职 编辑:程序博客网 时间:2024/06/07 11:13


用到关于PHP缓冲区的函数:

ob_start();//打开输出控制缓冲

ob_ get_contents(); 返回输出缓冲区内容

用到的生成文件的函数:

file_put_contents('文件路径','文件内容');
简单版的就只需要两个文件


1.singwa.php中的代码

<<!DOCTYPE html><html><head><meta charset = "utf-8"><title>测试</title></head><body><div><h3>列表</h3><ul><?php foreach ($news as $key => $value) {?><li><?php echo $value['title']; ?></li><?php }?></ul></div></body></html>


2.index.php中的代码

<?php// 假设从数据库得到的数据保存在了变量$news里$news = array(array('title' => '这是什么1', ),array('title' => '这是什么2', ),array('title' => '这是什么3', ),) ;// 开启缓冲区ob_start();// 引入HTML模板文件require_once("singwa.php");// 生成文件(文件里有数据和模板)file_put_contents('index1.html',ob_get_contents());

3.执行index.php文件就会生成一个静态文件index1.html 内容为

<<!DOCTYPE html><html><head><meta charset = "utf-8"><title>测试</title></head><body><div><h3>列表</h3><ul><li>这是什么1</li><li>这是什么2</li><li>这是什么3</li></ul></div></body></html>
4.就多了一个文件

注: 这是简单的页面静态化,一般会加入过期时间,这样就要加个判断是否存在是否过期,如果没过期则直接输出文件内容,如过期则删除后再创建文件。