利用ob函数简单实现PHP动态网站纯静态化

利用ob函数简单实现PHP动态网站纯静态化

 

当然你得首先你得先有个站点,本地搭建的就可以了,站点代码需要非常熟悉,最好是自己 写的代码,进入正题

先说说php文件的执行过程

第一步:用户请求服务器上面的php文件,

第二步:服务器对php语法进行分析,

第三步解析php文件,

第四步运行php文件

第五步运行输出php执行后输出的内容

当php有内容输出到浏览器的时候,内容会经过一个缓冲区(buffer)再通过协议传到浏览器;我们要做的就是把缓冲区的内容区出了.另存为html页面

这里先介绍几个关于PHP缓冲区的相关函数:

ob_start     开启缓冲区函数

ob_get_contents     获取缓冲区的内容

 

我们用到这两个函数,这篇文章不考虑其他的,只考虑把网站静态化!!

首先在php文件顶部开启缓冲区(ob_start);

然后在文件的底部,放上file_put_contents(‘/目录名称/文件名’,’ob_get_contents()’)

这就可以吧这个页面保存到自己设置的目录 .文件名可以跟着id走,生成文件了如何使用了,

加个if判断 判断指定的文件是否存在,比如

判断文件是否存在并且判断文件存在时间是否过长,如果有文件并且存在时间正常直接引入生成的文件;

if(is_file(‘index.shtml’) && (time() – filemtime(‘index.shtml’)) < 300) {

     include‘index.shtml’;

else {

否则就执行你的逻辑代码,最后生成静态文件,生成的静态文件再次被访问,条件通过,直接引入静态页面

}

 

只是最简单的东西了,新手可以看看,大手,就别喷了!!!

 

点赞

发表评论

电子邮件地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据