is_cached (gecachte Version existiert)boolis_cachedstringtemplatestringcache_idstringcompile_id
Gibt 'true' zurück, wenn ein gültiger Cache für das angegebene Template existiert.
Dies funktioniert nur, wenn caching eingeschaltet ist.
is_cached
caching = true;
if(!$smarty->is_cached("index.tpl")) {
// Datenbank-Abfragen, Variablen zuweisen...
}
$smarty->display("index.tpl");
?>
]]>
Als optionalen zweiten Parameter können Sie die 'cache_id' übergeben,
falls Sie mehrere Caches für ein Template verwenden.
'is_cached' bei mehreren Template-Caches
caching = true;
if(!$smarty->is_cached("index.tpl", "FrontPage")) {
// Datenbank Abfragen, Variablen zuweisen...
}
$smarty->display("index.tpl", "FrontPage");
?>
]]>
Technische Bemerkung
Wenn is_cached true zurück gibt, wird die Ausgabe geladen. Alle weiteren Aufrufe von display() oder fetch() werden aus diesem Cache bedient. Dies verhindert eine Race Condition, die auftauchen könnte, wenn ein anderes Script das besagte Template aus dem Cache löscht. Das bedeutet natürlich auch, dass clear_cache() und andere Cache spezifische Einstellungen keine Auswirkungen haben, nachdem is_cached true zurückgegeben hat.