加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

ThinkPHP文件缓存类代码分享

发布时间:2020-12-14 14:03:36 所属栏目:大数据 来源:网络整理
导读:取自ThinkPHP的文件缓存类代码,这里就不多废话了,小伙伴们自己看注释吧。 dir = $dir; }/** * @desc 设置文件缓存 * @param string $key 文件名 * @param unkonw $data 缓存数据 * @param int $expire 过期时间 */public function set($key,$data,$expire

取自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');

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读