PHP文件缓存类

最近项目数据库的量越来越大,直接查DB的方式已经不能满足需求了,现成的缓存工具有memcached、redis,不过今天自己写了个文件缓存类,寥寥几行代码就能满足需求。代码如下:

Class FileCache{
    Public function cache($filename, $expire, $table, $sql){
        // 有缓存就用,没有就创建
        if (file_exists($filename)) {
            // 缓存超时,则重新创建
            if ((time() - filemtime($filename)) > $expire) {
                // 读DB数据
                // 本来应该是从数据库里读数据,这里仅作演示
                $data = array('table' => $table, 'sql' => $sql);
                file_put_contents($filename, serialize($data));
                return $data;
            }else{
                return unserialize(file_get_contents($filename));
            }
        }else{
            // 读DB数据
            // 本来应该是从数据库里读数据,这里仅作演示
            $data = array('table' => $table, 'sql' => $sql);
            file_put_contents($filename, serialize($data));
            return $data;
        }
    }
}

$table = 'user';
$sql = 'select * from user';
$cache = new FileCache;
$text = $cache->cache('cache/cache_2', 3, $table, $sql);
print_r($text);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值