zolo 发表于 2015-8-27 09:12:07

php简单数据缓存类

  公司手机触屏站 ,由于页面图片太多,所以需要做数据缓存,就随便写一个数据缓存类。
  直接贴代码
  <?php
/**
*
* fianl_m@foxmail.com
*缓存类
*把数据查询出,并序列化写入文件
**/
class Cache{

function __construct($config){
//定义是否开启缓存
$this->is_cache=$config['is_cache'];
//定义缓存目录
$this->cache_file=$config['cache_file'];
//定义缓存时间
$this->cache_time=$config['cache_time'];


}

//读取缓存文件
public function open($name){

$arr=array();
$filename=$this->cache_file.$name;
$status=filemtime($filename)+$this->cache_time>time();//定义缓存时间
if( file_exists($filename) && $status && $this->is_cache){
$content=file_get_contents($filename);//读取缓存文件
$arr=unserialize($content);
return $arr;
}else{
return false;
}

}
//写入缓存文件
public function write($name,$data=array()){
$filename=$this->cache_file.$name;
$content=serialize($data);
file_put_contents($filename, $content);//写入缓存文件

}
  
  
  }
  
?>
  
  其实无非就是,把select的数组然后序列化 放进文本中 然后读出来。
  使用方法
  //定义缓存是否开启
require('cache.class.php');
$config=array(
'is_cache'=>1,//是否开启缓存
'cache_file'=>'./cache/',//缓存文件夹
'cache_time'=>'60',//缓存时间
);
$cache=new Cache($config);
  //打开缓存,传入缓存文件名字
  $row=$cache->open($filename);
  //写入缓存传入文件名字和数据(数组)
  $cache->write($filename,$data);
  
  ps:有不懂的 可以给我留言非囍勿喷,大神绕过,菜鸟学习!
  
页: [1]
查看完整版本: php简单数据缓存类