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

Name

is_cached (gecachte Version existiert)

bool is_cached(string template,
               string cache_id,
               string compile_id);

Gibt 'true' zurück, wenn ein gültiger Cache für das angegebene Template existiert. Dies funktioniert nur, wenn caching eingeschaltet ist.

Example 13.18. is_cached


<?php
$smarty->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.

Example 13.19. 'is_cached' bei mehreren Template-Caches


<?php
$smarty->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.