saveCacheDatToDisk();
}
}
public function hasPageExpired($cachedkey){
if (array_key_exists($cachedkey, $this::$cachedat))
{
$cachedpage=$this::$cachedat[$cachedkey];
if (
(floatval($cachedpage['expires'])
+floatval($this::$htmlcacheexpires*3600))
saveCacheDatToDisk();
}
}
public function getCachedPage($cachedkey){
$page=$this::$cachedat[$cachedkey];
return file_get_contents('./htmlcache/cached/'.$page['expires'].'.html');
}
public function getCachedPageDate($chachedkey){
$page=$this::$cachedat[$cachedkey];
if (file_exists('./htmlcache/cached/'.$page['expires'].'.html'))
{
return filemtime('./htmlcache/cached/'.$page['expires'].'.html');
}
else
{
return time();
}
}
private function saveCacheDatToDisk(){
return file_put_contents('./htmlcache/cached.dat', serialize ($this::$cachedat));
}
public function purgeCache(){
unlink ('./htmlcache/cached.dat');
if(scandir('./htmlcache/cached')!==false){
$cachedfilez=array_diff(scandir('./htmlcache/cached'), array('..', '.'));
foreach ($cachedfilez as $cachedfile){
unlink ('./htmlcache/cached/'.$cachedfile);
}
unlink ('./htmlcache/cached.dat');
}
}
public function purgePage($key){
$page=$this::$cachedat[$key];
unlink (file_get_contents('./htmlcache/cached/'.$page['expires'].'.html'));
unset($this::$cachedat[$key]);
return $this->saveCacheDatToDisk();
}
}
?>