lutego 28

Cache - klasa do cachowania danych

Tag: PHPMatheW @ 1:10. . Post odwiedzany 3064 razy. Trackback

Mam do zaprezentowania własną klasę do cachowania. Umożliwia ona obok podstawowej funkcji odczytywania danych z danym czasem ważności podział danych na grupy, usuwanie wybranych danych z cache, grupy, bądź całego cache, wybór sterowników (aktualnie utworzona jest jedna strategia - do zapisu do plików, jednak spełniając interfejs CacheDriver możemy napisać własny - np. do zapisu do pamięci czy bazy), prosty debugMode - włączenie spowoduje wyrzucanie wyjątków.

Kod sprawdzany na PHP 5.2.1, powinien uruchamiać się na każdym PHP5.

Klasa jest opublikowana na licencji GPL.

Przykład:


	require_once 'cache.class.php';
	require_once 'fileCacheDriver.class.php';

	function getPrinters(){
		return array('HP 845C', 'Canon E23', 'Lexmark L45');
	}

	try {
		$cache=new Cache();
		$cache->addDriver('file', new FileCacheDriver());

		$printers=$cache->get('products', 'printers', 500); # zwraca dane z cache z grupy products o id printers

		if($printers===false) { #nie ma danych w cache
			$printers=getPrinters();
			$cache->set('products', 'printers', $printers); #ustawia dane do cache
		}	

		var_dump($printers);
	}
	catch (CacheException $e){
		echo 'Error: '.$e->getMessage();
	}

Pokaż cały kod
Pobierz

Podobne wpisy

Dodaj do: Dodaj do del.icio.us Dodaj do Wykop.pl Dodaj do Google Reader lub Google IG
Licencja: Creative Commons Uznanie autorstwa-Użycie niekomercyjne-Bez utworów zależnych 2.5 Polska.

Zostaw komentarz