ThinkPHP文件缓存类代码分享

前端之家收集整理的这篇文章主要介绍了ThinkPHP文件缓存类代码分享前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

取自ThinkPHP文件缓存类代码,这里就不多废话了,小伙伴们自己看注释吧。

PHP;"> dir = $dir;
}
/**
 *  @desc 设置<a href="https://www.jb51.cc/tag/wenjian/" target="_blank" class="keywords">文件</a>缓存
 *  @param string $key <a href="https://www.jb51.cc/tag/wenjian/" target="_blank" class="keywords">文件</a>名 
 *  @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 <a href="https://www.jb51.cc/tag/huoqu/" target="_blank" class="keywords">获取</a><a href="https://www.jb51.cc/tag/wenjian/" target="_blank" class="keywords">文件</a>
 * @param string $key <a href="https://www.jb51.cc/tag/wenjian/" target="_blank" class="keywords">文件</a>名
 */
public function get($key){
  //$filename = dirname(__FILE__).self::C_FILE.$this->dir.$key.self::EXT;
  if(!file_exists($this->filename)){
    return '缓存<a href="https://www.jb51.cc/tag/wenjian/" target="_blank" class="keywords">文件</a>已经不存在';
  }else{
    $res = file_get_contents($this->filename);
  }
  return $res;
}
/**
 *  @desc <a href="https://www.jb51.cc/tag/shanchu/" target="_blank" class="keywords">删除</a><a href="https://www.jb51.cc/tag/wenjian/" target="_blank" class="keywords">文件</a>
 * @param string $key <a href="https://www.jb51.cc/tag/wenjian/" target="_blank" class="keywords">文件</a>名
 */
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');

原文链接:https://www.f2er.com/thinkphp/22049.html

猜你在找的ThinkPHP相关文章