3.刪除緩存
生成緩存文件:
file.php操作靜態緩存的類
_dir = dirname(__FILE__) . '/files/';
}
//key是緩存文件文件名,value是緩存數據
public function cacheData($key, $value = '', $path='') {
$filename = $this->_dir . $path . $key . self::EXT;
if($value !== '') { // 將value值寫入緩存
//獲取目錄,判斷如果目錄不存在,創建目錄
$dir = dirname($filename);
if(!is_dir($dir)) {
mkdir($dir, 0777);//生成目錄,給出權限
}
//第一個參數文件名,第二個數據(String),把數組vlaue轉換成字符串
return file_put_contents($filename,json_encode($value));
}
}
}
1,
'name'=>'david',
'type'=>array(4,5,6)
);
$file=new File();
if($file->cacheData('davidcache',$data)){
echo "success";}else{
echo "error";
}如果生成成功顯示success
這樣就在當前文件的目錄的file目錄下創建了名為davidchche.txt的緩存文件。
進階版:同時也實現緩存的讀和刪除
file.php
_dir = dirname(__FILE__) . '/files/';
}
//key是緩存文件文件名,value是緩存數據
public function cacheData($key, $value = '', $path='') {
$filename = $this->_dir . $path . $key . self::EXT;
if($value !== '') { // 將value值寫入緩存
if(is_null($value)) {//如果value值穿null則刪除這個緩存文件
return @unlink($filename);
}
//獲取目錄,判斷如果目錄不存在,創建目錄
$dir = dirname($filename);
if(!is_dir($dir)) {
mkdir($dir, 0777);//生成目錄,給出權限
}
//第一個參數文件名,第二個數據(String),把數組vlaue轉換成字符串
return file_put_contents($filename,json_encode($value));
}
if(!is_file($filename))//讀取緩存文件
{
return FALSE;
}else{
return json_decode(file_get_contents($filename),true);
}
}
}
testfile.php
1,
'name'=>'david',
'type'=>array(4,5,6)
);
$file=new File();
//刪除緩存文件
if($file->cacheData('davidcache',null)){
//if($file->cacheData('davidcache')){
//var_dump($file->cacheData('davidcache'));
//exit;
echo "success";}else{
echo "error";
}
/*下面這個是讀取緩存時使用的
if($file->cacheData('davidcache')){
var_dump($file->cacheData('davidcache'));
exit;
echo "success";}else{
echo "error";
}*/
/*下面這個是創建緩存調用的
if($file->cacheData('davidcache',$data)){
echo "success";}else{
echo "error";
}*/
//根據file類,如果value為空='',讀取緩存數據,
//如果value為null,刪除緩存數據,
//如果value不為空,也不是null,那麼創建緩存數據