この記事では主にphpキャッシュクラスを紹介していますが、md5を使ってファイル名を暗号化していますので、参考までにご覧ください。 コードは以下のように表示されます。 dir=$dirpath; $this->make_dir($this->dir); } 関数読み取り($key,$分=1) { $filename=$this->get_filename($key); if($datas = @file_get_contents($filename)) { $datas = unserialize($datas); if(time() - $datas['time'] <$ minutes*60) { $datas['data'] を返します。 } } false を返します。 } 関数書き込み($key,$data) { $filename=$this->get_filename($key); if($handle = fopen($filename,'w+')) { $datas = array('data'=>$data,'time'=>time()); 群れ($ハンドル,LOCK_EX); $rs = fputs($handle,serialize($datas)); 群れ($ハンドル,LOCK_UN); fclose($handle); if($rs!==false){true を返す } } false を返します。 } 関数clear_all() { $dir=$this->dir; $this->del_file($dir); } プライベート関数 get_filename($key) { $this->dir.$key.'_'.md5($key.$this->key); を返します。 } プライベート関数 make_dir($path) { if (! file_exists ( $path )) { $this->make_dir ( dirname ( $path ) ); if (! mkdir ( $path, 0777 )) die ('キャッシュ フォルダーを作成できません' . $path ); } } プライベート関数 del_file($dir) { if (is_dir($dir)) { $dh=opendir($dir);// ディレクトリを開きます // ディレクトリ内のすべてのファイルをリストし、 と .. while (false !== ( $file = readdir ($dh))) { if($file!="." && $file!="..") { $fullpath=$dir."/".$file; If(!is_dir($fullpath)) { リンク解除($fullpath); } それ以外 { $this->del_file($fullpath); } } } } 閉じられたir($dh); } } } $cache = 新しいキャッシュ(); $cache->set_dir('data/cache_dir/'); $data=$cache->read('sys',1); if(空($data)) { $data=array('aa'=>1111,'bb'=>2222,'date'=>date('Y-m-d H:i:s')); $cache->write('sys',$data); } print_r($data);