Get Smarty

Donate

Paypal

Smarty Icon

You may use the Smarty logo according to the trademark notice.

Smarty Template Engine Smarty Template Engine

For sponsorship, advertising, news or other inquiries, contact us at:

Sites Using Smarty

Advertisement

Groupes de fichiers de cache

Vous pouvez faire des groupements plus élaborés en paramétrant les groupes de $cache_id. Il suffit de séparer chaque sous-groupe avec une barre verticale | dans la valeur de $cache_id. Vous pouvez faire autant de sous-groupes que vous le désirez.

  • Vous pouvez voir les groupes de cache comme une hiérarchie de dossiers. Par exemple, un groupe de cache 'a|b|c' peut être considéré comme la hiérarchie de dossiers '/a/b/c/'.

  • clear_cache(null,'a|b|c') supprimera les fichiers '/a/b/c/*'. clear_cache(null,'a|b') supprimera les fichiers '/a/b/*'.

  • Si vous spécifiez un $compile_id de cette façon clear_cache(null,'a|b','foo') il sera traité comme un groupe de cache apposé '/a/b/c/foo/'.

  • Si vous spécifiez un nom de template de cette façon clear_cache('foo.tpl','a|b|c') alors Smarty tentera d'effacer '/a/b/c/foo.tpl'.

  • Vous ne POUVEZ PAS effacer un nom de template spécifié sous un groupe de cache multiple comme '/a/b/*/foo.tpl', le groupement de cache fonctionne UNIQUEMENT de gauche à droite. Vous pourriez vouloir grouper vos templates sous un groupe de cache simple hiérarchisé pour être capable de les effacer comme un groupe.

Le groupement de cache ne devrait pas être confondu avec votre hiérarchie de dossiers de templates, le groupement de cache n'a aucune connaissance de la façon dont vos templates sont structurés. Donc, par exemple, si vous avez une structure de template comme themes/blue/index.tpl et que vous voulez être capable d'effacer tous les fichiers de cache pour le thème blue, vous devriez créer une structure de groupe de cache qui reflète la structure de fichiers de vos templates, comme display('themes/blue/index.tpl','themes|blue'), et les effacer avec clear_cache(null,'themes|blue').

Example 14.9. Groupes d'identifiants de cache


<?php
require('Smarty.class.php');
$smarty = new Smarty;

$smarty->caching = true;

// efface tous les fichiers de cache avec "sports|basketball" comme premiers
// groupes d'identifiants de cache
$smarty->clear_cache(null,'sports|basketball');

// efface tous les fichiers de cache "sports" comme premier groupe d'identifiants.
// Inclue donc "sports|basketball" ou "sports|nimportequoi|nimportequoi|..."
$smarty->clear_cache(null,'sports');

$smarty->display('index.tpl','sports|basketball');
?>

  

Comments
No comments for this page.

Advertisement

Sponsors [info]

Sponsors