php真静态缓存 ob系统函数

真静态缓存:(真的生成一个html页面,在接下来的操作中直接调用该html)
第一次(刷新网页面)判断是否存在缓存文件 (可设置一时间)
如果不存在 第一次是(可根据PDO)连接数据库 查找数据 输出到页面 并且同时缓存(写入)到本地一个.html文件;
再次(刷新网页面) 判断是否存有该缓存文件时
当存在缓存文件,直接查找本地缓存(file_get_content) 读取出来

以下代码在ci框架中编写完成

$time = 10; //设置缓存页面过期时间
if(!is_file("obtest.html") || time()-filemtime("obtest.html")>$time){
ob_start();       //打开缓冲区   
$arr['res']=$this->db->get('user')->result_array();
$this->load->view('welcome_message',$arr);
//print_r($arr);
$info = ob_get_contents();       //得到缓冲区的内容并且赋值给$info   
$file = fopen('obtest.html', 'w');  //打开文件info.txt   
fwrite($file, $info);       //写入信息到info.txt   
fclose($file);          //关闭文件info.txt
}else{
    echo "cache:";
    echo file_get_contents("obtest.html");
}

fopen 和 filemtime 方法的使用:

fopen() 函数打开文件或者 URL。fopen(文件名称,文件访问类型)w写入方式打开。

filemtime() 函数返回文件内容上次的修改时间,里面跟文件名。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值