简单实例php 缓存文件生成技术实例

作者:袖梨 2022-07-02

class Cache
{
 protected $_cacheDir;

 public function __construct()
 {
  $this->_cacheDir = "./cache";
 }

 public function setCacheDir($cacheDir)
 {
  if(empty($cacheDir)){
   $this->_cacheDir = $this->_cacheDir;
  }else{
   $this->_cacheDir = $cacheDir;
  }
 }

 public function getCache($name)
 {
  $file_path = $this->_cacheDir.'/namma_cache-'.$name;
  if(!file_exists($file_path))
  {
   return false;
  }
  $handle = @fopen($file_path,'rb');
  $data = @fread($handle,filesize($file_path));
  return $this->unformatData($data);
  @flose($handle);
 }

 public function setCache($name,$data)
 {
  $file_path = $this->_cacheDir.'/namma_cache-'.$name;
  $data = $this->formatData($data);
  $fp = fopen($file_path, 'w');
        fwrite($fp,$data);
        fclose($fp);
        return $file_path;
 }

 public function formatData($data)
 {
  return serialize($data);
 }

 public function unformatData($data)
 {
  return unserialize($data);
 }
}

相关文章

精彩推荐