Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Pages: 1
Salut à tous
Je vient de faire le tour de la doc sur Zend_Cache et c'est simple comme bonjour
Par contre il me reste un détail qui n'est pas traiter dans la doc:
Comment faire pour redéfinir une valeur de cache (tag ou balise), même si celle-ci n'est pas expirée ?
on refait un $cache->save($newresult, 'myresult'); pour ecrasé ???
Merci d'avance pour vos conseils
Dernière modification par BeRoots (01-11-2008 01:39:48)
Hors ligne
Salut BeRoots,
en effet, appeler save() de nouveau, avec le même identifiant unique, va écraser les données précédemment stockées.
Si tu as un doute, tu peux aussi forcer la suppression du contenu précédent avec :
$cache->remove('myresult');
ou par tag :
// mise en cache $cache->save($result,'myresult',array('results'); // suppression $cache->clean(Zend_Cache::CLEANING_MODE_MATCHING_TAG,array('results'));
Hors ligne
ok merci
pette question sur le frontend "file":
on lit dans la doc sur ce dernier que:
Pour l'instant, vous avez un fichier de configuration XML qui est parsé par une fonction qui retourne un "objet config" (comme avec Zend_Config). Avec Zend_Cache_Frontend_File, vous pouvez stocker l'objet config dans le cache (pour éviter d'analyser le fichier de configuration XML chaque fois) mais avec une sorte de forte dépendance au fichier maître. Ainsi si le fichier XML de configuration est modifié, le cache est immédiatement invalid
coment cela fonctionne t'il?
Hors ligne
pas d'idée ?
Hors ligne
Hello,
$frontendOptions = array('master_file' => 'mon_fichier.xml', 'lifetime' => 3600); $backendOptions = array('cache_dir' => '/tmp/'); $cache = Zend_Cache::factory('File', 'File', $frontendOptions, $backendOptions); if (!($data = $cache->load('mon_id'))) { // je lis mon fichier xml et je le traite, je récupère $data $cache->save($data, 'mon_id'); }
Le cache sera invalide si 3600 sont écoulées ou si le fichier 'mon_fichier.xml' a été modifié depuis la mise en cache.
A+
PS : j'en ai profité pour corriger la traduction
Par exemple, vous avez un fichier de configuration XML qui est parsé par une fonction, celle-ci retourne un "objet config" (comme avec Zend_Config). Avec Zend_Cache_Frontend_File, vous pouvez stocker l'objet config dans le cache (pour éviter d'analyser le fichier de configuration XML chaque fois) mais avec une sorte de forte dépendance au fichier maître. Ainsi si le fichier XML de configuration est modifié, le cache est immédiatement invalide.
Hors ligne
[mode quasi hors-sujet]
J'avais même pas remarqué qu'il y avait un système de cache !! Je suis en train de le mettre en place, et c'est de la balle. Merci à BeRoots, c'est ce topic qui m'a mit la puce à l'orteil
[/mode quasi hors-sujet]
Hors ligne
encore merci de vos conseils
Hors ligne
Pages: 1