简单的PHP缓存Class类实例代码分享

图片[1]笒鬼鬼资源简单的PHP缓存Class类实例代码分享笒鬼鬼资源笒鬼鬼资源

正文:

网站缓存想必大家都比较熟悉,就比如常见的网站程序WordPress,它就有非常多的缓存插件,那么问题来了,如果我们不想使用这些插件,想自己做一个缓存功能该怎么弄呢?所以就要用到PHP的缓存技术了,今天我就给大家分享一个简单的缓存类,大家可以根据自己不同的应用场景对代码进行适当的修改和调整。

使用教程:

1.首先实例化缓存类,例如:$huancun = new Cache();

2.设置当前缓存的时间和缓存文件存放的位置,例如:$huancun = new Cache(60, ‘/any_other_path/’);

3.读取已经缓存好的文件,例如:$huancunwenjian= $cache->get(‘data_key’);

4.写入相关数据缓存,例如:$huancunwenjian= $cache->put(‘data_key’, ‘data_value’);

完整缓存类代码:

<?php
class Cache
{
    private $cache_path; //path for the cache 
    private $cache_expire; //seconds that the cache expires 

    public function Cache($exp_time = 3600, $path = "cache/")
    {
        $this->cache_expire = $exp_time;
        $this->cache_path = $path;
    }

    private function wzming($huancunk)
    {
        return $this->cache_path . md5($huancunk);
    }
    public function put($huancunk, $hcd)
    {
        $values = serialize($hcd);
        $wzming = $this->wzming($huancunk);
        $wenjian = fopen($wzming, 'w');
        if ($wenjian) { //able to create the wenjian 
            fwrite($wenjian, $values);
            fclose($wenjian);
        } else return false;
    }
    public function get($huancunk)
    {
        $wzming = $this->wzming($huancunk);
        if (!wenjian_exists($wzming) || !is_readable($wzming)) {
            return false;
        }
        if (time() < (wenjianmtime($wzming) + $this->cache_expire)) {
            $wenjian = fopen($wzming, "r");
            if ($wenjian) { //able to open the wenjian 
                $hcd = fread($wenjian, wenjiansize($wzming));
                fclose($wenjian);
                return unserialize($hcd);
            } else return false;
        } else return false;
    }
}

 

© 版权声明
THE END
喜欢就支持一下吧~
点赞8 分享
评论 抢沙发
头像
欢迎您留下宝贵的评论!
提交
头像

昵称

取消
昵称表情图片

    暂无评论内容