PHP Classes

File: readme.txt

Recommend this page to a friend!
  Classes of Axel Hahn   AhCache   readme.txt   Download  
File: readme.txt
Role: Documentation
Content type: text/markdown
Description: Readme
Class: AhCache
Store cached data in files
Author: By
Last change:
Date: 8 years ago
Size: 2,728 bytes
 

Contents

Class file image Download

cache.class.php

AXELS CONTENT CACHE CLASS V2.3

http://www.axel-hahn.de/php_contentcache License: GNU/GPL v3

2009-07-20 1.0 cache class on www.axel-hahn.de 2011-08-27 1.1 comments added; sCacheFile is private 2012-02-04 2.0 cache serialzable types; more methods, i.e.:

              - comparison of timestimp with a sourcefile
              - cleanup unused cachefiles

2012-05-15 2.1 isExpired() returns as bool; new method iExpired() to get

             expiration in sec

2012-05-15 2.2 - rename to AhCache

             - _cleanup checks with file_exists

2014-03-31 2.3 - added _setup() that to includes custom settings

             - limit number of files in cache directory

--- typical usage:

example using expiration (ttl value):

$sContent='';  
$iTtl=60*5; // 5 min 
  
require_once("/php/cache.class.php");  
$myCache=new AhCache("my-app","task-id");  
  
if($myCache->isExpired()) {  
    // cache does not exist or is expired
    $sContent=...  
  
    // save cache
    $myCache->write($sContent, $iTtl);  
  
} else {  
    // read cached data
    $sContent=$myCache->read();  
}  
  
// output
echo $sContent;  

example compare age of cache with age of a sourcefile

require_once("/php/cache.class.php");  
$sCsvFile="my_source_file.csv"  
  
$myCache=new AhCache("my-app","task-id");  
$sContent=$myCache->read(); // read cached data
  
// comparison of last modified time (mtime)
if (!$myCache->isNewerThanFile($sCsvFile)) {  
  
	// update content 
	$sContent=...  
  
	// ... and save cache
	$myCache->write($sContent);  
};  
  
// output
echo $sContent;

cleanup cache directory

require_once("/php/cache.class.php");  
$o=new AhCache("my-app");  
$o->cleanup(606024*1); // delete all Cachefiles of the module "my-app" older 1 day

or cleanup cachefiles of all modules
$o=new Cache(); $o->cleanup(606024*1);