公司手機觸屏站 ,由於頁面圖片太多,所以需要做數據緩存,就隨便寫一個數據緩存類。
直接貼代碼
<?php
/**
*
* [email protected]
* 緩存類
* 把數據查詢出,並序列化寫入文件
**/
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:有不懂的 可以給我留言 非囍勿噴,大神繞過,菜鳥學習!