kk = $_SERVER; //写入缓存 //$fzz->set("kk",$_SERVER,10000); //此方法不与类属性想冲突,可以用任意缓存名; print_r($fzz->kk); //读取缓存 //print_r($fzz->get("kk")); //unset($fzz->kk); //删除缓存 //$fzz->_unset("kk"); var_dump(isset($fzz->kk)); //判断缓存是否存在 //$fzz->_isset("kk"); //$fzz->clear(); //清理过期缓存 //$fzz->clear_all(); //清理所有缓存文件 class fzz_cache{ public $limit_time = 20; //缓存过期时间 public $cache_dir = "data"; //缓存文件保存目录 //写入缓存 function __set($key , $val){ $this->set($key ,$val); } //第三个参数为过期时间 function set($key ,$val,$limit_time=null){ $limit_time = $limit_time ? $limit_time : $this->limit_time; $file = $this->cache_dir."/".$key.".php"; $val = serialize($val); @file_put_contents($file,$val) or $this->error(__line__,"文件写入失败"); @chmod($file,0777) or $this->error(__line__,"设定文件权限失败"); @touch($file,time()+$limit_time) or $this->error(__line__,"更改文件时间失败"); } //读取缓存 function __get($key){ return $this->get($key); } function get($key){ $file = $this->cache_dir."/".$key.".php"; if (@filemtime($file)>=time()){ return unserialize(file_get_contents($file)); }else{ @unlink($file) ; } } //删除缓存文件 function __unset($key){ return $this->_unset($key); } function _unset($key){ if (@unlink($this->cache_dir."/".$key.".php")){ return true; }else{ return false; } } //检查缓存是否存在,过期则认为不存在 function __isset($key){ return $this->_isset($key); } function _isset($key){ $file = $this->cache_dir."/".$key.".php"; if (@filemtime($file)>=time()){ return true; }else{ @unlink($file) ; return false; } } //清除过期缓存文件 function clear(){ $files = scandir($this->cache_dir); foreach ($files as $val){ if (filemtime($this->cache_dir."/".$val)cache_dir."/".$val); } } } //清除所有缓存文件 function clear_all(){ $files = scandir($this->cache_dir); foreach ($files as $val){ @unlink($this->cache_dir."/".$val); } } function error($line,$msg){ die("出错文件:".__file__."/n出错行:$line/n错误信息:$msg"); } } ?>