Bonsoir,
Je voudrai supprimer un élément du cache si je modifie l'élément qui y est placé. Au cas ou, voici mon code tiré de la doc pour créer mon cache, si vous pensez qu'il n'est pas optimisé, n'hésitez pas à me le dire:
Voilà, mais je souhaiterai supprimer dans cet exemple $menuGestionPage du cache dés qu'il est modifié afin de le recharger. J'ai du mal à comprendre la fonction a utilisé car lorsque je fouille dans les sources, je n'ai pas de classe Abstract Cache comme j'ai l'habitude de voir. Dans la classe Core.php, j'ai une méthode remove($id) mais je ne suis pas sûr que c'est la méthode à utiliser. Je ne pige pas vraiment l'histoire du backend et frontend, sachant que je veux juste stocker une variable et la retirer.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 $frontendOptions = array( 'lifetime' => 7200, // temps de vie du cache de 2 heures 'automatic_serialization' => true ); $backendOptions = array( 'cache_dir' => './data/cache' // Répertoire où stocker les fichiers de cache ); // créer un objet Zend_Cache_Core self::$cache = Zend_Cache::factory('Core', 'File', $frontendOptions, $backendOptions); ... //========================================================================== // Menu : Gestion des pages de déplacement BD //========================================================================== if(!$menuGestionPage = self::$cache->load('menuGestionPage')) { $menuGestionPage = new MenuGestionPage(); Zend_Registry::set('menuGestionPage', $menuGestionPage); //-- Enregistrement dans le registry self::$cache->save($menuGestionPage, 'menuGestionPage'); } else { Zend_Registry::set('menuGestionPage', $menuGestionPage); //-- Enregistrement dans le registry }
Merci pour vos conseils.
Partager