17.3 Cache-Attribute 

Obwohl die Komponenten Cache und Feed beide sehr »schlank« sind, beinhaltet zumindest Cache noch Features, die Sie im Beispiel nicht kennengelernt haben, weshalb wir sie an dieser Stelle kurz vorstellen wollen.
Wie bereits vorher kurz erwähnt wurde, werden Cache-Inhalte nicht nur durch ihre eindeutige ID beschrieben, sondern auch durch eine optionale Menge von Attributen. Dies kann sinnvoll sein, wenn Sie die gecacheten Inhalte in Form von Kategorien gliedern wollen. Haben Sie beispielsweise eine Webseite, die in mehreren Sprachen verfügbar ist, so kann es vorteilhaft sein, Cache-Inhalte jeweils mit derjenigen Sprache, in der sie verfasst wurden, zu kennzeichnen. So ist es Ihnen möglich, alle Cache-Inhalte in einer Sprache gemeinsam anzusprechen und dann beispielsweise zu löschen.
$cache = ezcCacheManager::getCache( 'example' ); $cache->store( 1, 'Test content 1', array( 'lang' => 'en' ) ); $cache->store( 2, 'Testinhalt 1', array( 'lang' => 'de' ) ); $cache->store( 3, 'Test content 1', array( 'lang' => 'en' ) ); $cache->delete( null, array( 'lang' => 'en' ) );
Listing 17.7 Der Umgang mit Cache-Attributen
Im gezeigten Beispiel werden drei verschiedene Inhalte im Cache gespeichert. Sie werden jeweils eindeutig durch eine ID gekennzeichnet. Zwei der Inhalte haben das Attribut 'lang' auf den Wert 'en' gesetzt, um anzuzeigen, dass diese Inhalte in englischer Sprache verfasst sind. Der Inhalt mit der ID 2 ist allerdings in Deutsch verfasst.
Der letzte Aufruf delete() des Listings erhält keine ID als Parameter, weswegen Cache-Dateien anhand ihrer Attribute identifiziert werden. Es werden also alle Inhalte in englischer Sprache gelöscht. Lediglich der Inhalt, bei dem das Attribut auf de gesetzt ist, bleibt im Cache erhalten.




Ihre Meinung






