php 文件缓存函数

时间:2022-09-23 16:47:10

代码如下:


function createHashDir($sign) 

$md5 = md5($sign); 
if(!is_dir(MB_CACHE)) mkdir(MB_CACHE); 
for($i=1;$i<=4;$i++) 

$dir .= $md5{$i}.'/'; 
if(!is_dir(MB_CACHE.$dir)) 

mkdir(MB_CACHE.$dir); 


return MB_CACHE.$dir; 

function setCacheFile($data,$sign = 'a',$type = 'array',$id = '') 

$cacheDir = $this -> createHashDir($sign); 
if(!empty($data)) 

$id = $id ? $id : $sign; 
$cacheFile = $cacheDir.$id.'.php'; 
$content = $type == 'array' ? var_export($data,true) : $data; 
file_put_contents($cacheFile,'<?php $'.$sign.' = '.$content.'; ?>'); 


function getCacheFile($sign = 'a',$id = '') 

$cacheDir = $this -> createHashDir($sign); 
$id = $id ? $id : $sign; 
$cacheFile = $cacheDir.$id.'.php'; 
if(is_file($cacheFile) && include_once($cacheFile)) 

return $$sign; 


function getCacheFilePath($sign = 'a',$id = '') 

$cacheDir = $this -> createHashDir($sign); 
$id = $id ? $id : $sign; 
return $cacheDir.$id.'.php'; 

function delCacheFile($sign = 'a') 

$cacheDir = $this -> createHashDir($sign); 
$id = $id ? $id : $sign; 
$cacheFile = $cacheDir.$id.'.php'; 
$this -> del_file($cacheFile);