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

Gruppi di Cache

Potete raggruppare le cache in modo più elaborato impostando gruppi di cache_id. Per fare questo separate ogni sottogruppo con una barra verticale "|" nel valore di cache_id. Potete usare tutti i sottogruppi che volete.

Potete pensare ai gruppi di cche come ad una gerarchia di directory. Ad esempio, un gruppo di cache "a|b|c" può essere concepito come la struttura di directory "/a/b/c". clear_cache(null,"a|b|c") equivale a cancellare i file "/a/b/c/*". clear_cache(null,"a|b") sarebbe come cancellare i file "/a/b/*". Se specificate un compile_id, ad esempio clear_cache(null,"a|b","foo"), sarà considerato come un ulteriore sottogruppo "a/b/c/foo/". Se specificate un nome di template, ad esempio clear_cache("foo.tpl","a|b|c"), Smarty tenterà di cancellare "/a/b/c/foo.tpl". NON POTETE cancellare un template specifico sotto più gruppi di cache, ad es. "a/b/*/foo.tpl"; i gruppi di cache funzionano SOLO da sinistra a destra. Dovrete raggruppare i vostri template sotto un singolo sottogruppo di cache per poterli cancellare tutti insieme.

I gruppi di cache non vanno confusi con la gerarchia della vostra directory dei template: i gruppi di cache infatti non sanno qual è la struttura dei template. Ad esempio, se avete una struttura di template tipo "themes/blu/index.tpl" e volete avere la possibilità di cancellare tutti i file di cache per il tema "blue", dovrete creare un gruppo di cache che riproduce la struttura dei template, ad esempio display("themes/blue/index.tpl","themes|blue"), e poi eliminarli con clear_cache(null,"themes|blue").

Example 14.9. gruppi di cache_id


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

$smarty->caching = true;

// eliminiamo tutti i file di cache che hanno "sports|basketball" come primi due gruppi
$smarty->clear_cache(null,"sports|basketball");

// eliminiamo tutti i file di cache che hanno "sports" come primo gruppo di cache
// questo include "sports|basketball", nonché "sports|(anything)|(anything)|(anything)|..."
$smarty->clear_cache(null,"sports");

// eliminiamo il file di cache foo.tpl con "sports|basketball" come cache_id
$smarty->clear_cache("foo.tpl","sports|basketball");


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

      

Comments
No comments for this page.

Advertisement

Sponsors [info]

Sponsors