找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1688|回复: 0
打印 上一主题 下一主题

ThinkPHP文件缓存类代码分享

[复制链接]

2647

主题

2647

帖子

7881

积分

论坛元老

Rank: 8Rank: 8

积分
7881
跳转到指定楼层
楼主
发表于 2018-2-14 05:46:36 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

            取自ThinkPHP的文件缓存类代码,这里就不多废话了,小伙伴们自己看注释吧。
dir = $dir;
      
    }
    /**
     *  @desc 设置文件缓存
     *  @param string $key 文件名
     *  @param unkonw $data 缓存数据
     *  @param int  $expire 过期时间
     */
    public function set($key,$data,$expire = 0){
      $this->filename =   dirname(__FILE__).self::C_FILE.$this->dir.$key.self::EXT;
      if(file_exists($this->filename)){
        $res = $this->get($key);
        if(md5($res) == md5(json_encode($data) ) ){
          return true;
        }
      }
      if(!is_dir(dirname($this->filename))){
        mkdir(dirname($this->filename),0777);
      }
      
      $source = fopen($this->filename,'w+');
      fwrite($source,json_encode($data));
      fclose($source);
    }
   
    /**
     *  @desc 获取文件
     * @param string $key 文件名
     */
    public function get($key){
      //$filename = dirname(__FILE__).self::C_FILE.$this->dir.$key.self::EXT;
      if(!file_exists($this->filename)){
        return '缓存文件已经不存在';
      }else{
        $res = file_get_contents($this->filename);
      }
      return $res;
    }
    /**
     *  @desc 删除文件
     * @param string $key 文件名
     */
    public function del($key){
      unlink($this->filename);
    }
   
  }
  
  $data = array('name'=>'song','age'=>20,'sex'=>'man','favority'=>array('apple','banana'));
  $cache = new Cache();
  $cache->set('cache',$data);
  //$cache->get('cache');
  //$cache->del('cache');
            
            
您可能感兴趣的文章:
  • 获取php页面执行时间,数据库读写次数,函数调用次数等(THINKphp)
  • ThinkPHP使用UTFWry地址库进行IP定位实例
  • ThinkPHP调用百度翻译类实现在线翻译
  • ThinkPHP调用common/common.php函数提示错误function undefined的解决方法
  • ThinkPHP分组下自定义标签库实例
  • Thinkphp调用Image类生成缩略图的方法
  • ThinkPHP进程计数类Process用法实例详解
  • thinkphp实现无限分类(使用递归)
  • thinkPHP2.1自定义标签库的导入方法详解
  • thinkphp跨库操作的简单代码实例
  • thinkPHP自定义类实现方法详解
  • thinkPHP引入类的方法详解
  • thinkPHP简单调用函数与类库的方法
            
  • 分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    用户反馈
    客户端