php - 静态页面怎么实现,就是把数据写入到html页面在缓存起来?

查看:175
本文介绍了php - 静态页面怎么实现,就是把数据写入到html页面在缓存起来?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

static.php 文件

<?php

$file  = "static.html";
$ctime =filectime($file);
$expr = 3600*24*10;//静态文件有效期,十天
if(file_exists($file)) {
    if($ctime+$expr> time()){
        echo file_get_contents($file);
    }else{
        unlink($file);//删除过期的静态页文件
         ob_start();
         //从数据库取出数据写入 static.html 
         
        $content = ob_get_contents();
        file_put_contents($file,$content);//写入内容到对应静态文件中
        ob_end_flush();
    }
    
 }else{
           ob_start();
         //从数据库取出数据写入 static.html 
        
        $content = ob_get_contents();
        file_put_contents($file,$content);//写入内容到对应静态文件中
        ob_end_flush();
    
 }

?>

static.html 页面

<html>

<head>  
<title>静态页面</title>  
<style type="text/css"> 
</head>
<body>
    <h1>数据库的数据1</h1> 
    <h2>数据库的数据2</h2>
    <h3>数据库的数据3</h3>
</div>  
</body>
</html>  

问题:就是当我第一次执行static.php的时候,是要从数据库查询数据,然后写入到static.html页面,同时显示static.html页面,这个时候static.html也成了一个静态页面了。
现在我不知道在

        ob_start();
         //从数据库取出数据写入 static.html 
         //同时显示 static.html
        $content = ob_get_contents();
        之间怎么处理,就是怎么把数据库的数据写入到static.html 里去,同时显示出来。
        

解决方案

直接在ob_start() 后面 include你的模板文件, 跟用混编一样的。。
include完成以后,直接echo $content; 就是显示出来

这篇关于php - 静态页面怎么实现,就是把数据写入到html页面在缓存起来?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆