| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102 |
- <?xml version="1.0" encoding="UTF-8"?>
- <!-- EN-Revision: 22140 -->
- <!-- Reviewed: no -->
- <sect2 id="zend.application.available-resources.cachemanager">
- <title>Zend_Application_Resource_Cachemanager</title>
- <para>
- <classname>Zend_Application_Resource_Cachemanager</classname>
- kann verwendet werden um ein
- Bündel von
- <classname>Zend_Cache</classname>
- Optionen zu setzen die verwendet werden sollen
- wenn Caches lazy geladen werden bei der Verwendung von
- <classname>Zend_Cache_Manager</classname>
- </para>
- <para>
- Da der Cache Manager ein Lazy Loading Mechanismus ist, werden die
- Optionen auf Options
- Templates übersetzt welche verwendet werden um ein Cache Objekt auf Anfrage zu
- initialisieren.
- </para>
- <example
- id="zend.application.available-resources.cachemanager.configExample">
- <title>Beispiel einer Cachemanager Ressource Konfiguration</title>
- <para>
- Anbei ist eine Beispiel
- <acronym>INI</acronym>
- Datei die zeigt wie
- <classname>Zend_Cache_Manager</classname>
- konfiguriert werden kann. Das Format ist der
- Präfix der Cachemanager Ressource (
- <property>resources.cachemanager</property>
- ) gefolgt
- von dem Namen der einer Cache Template/Bündel Option zugeordnet werden
- soll (z.B.
- <property>resources.cachemanager.database</property>
- ) und letztendlich gefolgt von einer
- typischen
- <classname>Zend_Cache</classname>
- Option.
- </para>
- <programlisting language="ini"><![CDATA[
- resources.cachemanager.database.frontend.name = Core
- resources.cachemanager.database.frontend.customFrontendNaming = false
- resources.cachemanager.database.frontend.options.lifetime = 7200
- resources.cachemanager.database.frontend.options.automatic_serialization = true
- resources.cachemanager.database.backend.name = File
- resources.cachemanager.database.backend.customBackendNaming = false
- resources.cachemanager.database.backend.options.cache_dir = "/path/to/cache"
- resources.cachemanager.database.frontendBackendAutoload = false
- ]]></programlisting>
- <para>
- Das Empfangen dieses Caches vom Cache Manager ist in Wirklichkeit so
- einfach wie
- der Zugriff auf eine Instanz des Managers (
- <classname>Zend_Cache_Manager</classname>
- )
- was von
- <classname>Zend_Application_Resource_Cachemanager</classname>
- empfangen wird
- beim Aufruf von
- <command>$cacheManager->getCache('database');</command>
- . Das folgende
- Beispiel ist von einem Controller genommen bei dem auf die Bootstrap Klasse
- als Front
- Controller Parameter zugegriffen werden kann (welcher automatisch wärend des
- bootstrappens zugeordnet wird). Wie man sehen kann implementiert die
- Cache Manager
- Ressource eine
- <methodname>getCacheManager()</methodname>
- Methode um die ge-bootstrappte
- Instanz von
- <classname>Zend_Cache_Manager</classname>
- zu erhalten.
- </para>
- <programlisting language="php"><![CDATA[
- $manager = $this->getFrontController()
- ->getParam('bootstrap')
- ->getResource('cachemanager')
- ->getCacheManager();
- $dbCache = $manager->getCache('database');
- ]]></programlisting>
- <para>
- Siehe auch die Methode
- <methodname>Zend_Cache::factory()</methodname>
- um eine
- Beschreibung der Standardwerte zu bekommen welche man zuordnen kann wenn ein
- Cache
- über eine Konfigurationsdatei konfiguriert wurde wie im obigen Beispiel
- einer
- <acronym>INI</acronym>
- Datei.
- </para>
- </example>
- </sect2>
|