Name
fetch
string fetch(string template,
string cache_id,
string compile_id);
Gibt die Ausgabe des Template zurück, anstatt es direkt anzuzeigen. Übergeben Sie einen gültigen Template Ressource-Typ und -Pfad. Als optionaler zweiter Parameter kann eine 'cache_id' übergeben werden. Bitte konsultieren Sie den Abschnitt über caching für weitere Informationen.
Als optionalen dritten Parameter können Sie eine 'compile_id' übergeben. Dies ist wertvoll, falls Sie verschiedene Versionen eines Templates kompilieren wollen - zum Beispiel in verschiedenen Sprachen. 'compile_id' wird auch verwendet, wenn Sie mehr als ein '$template_dir' aber nur ein '$compile_dir' haben. Setzen Sie dann für jedes Verzeichnis eine eigene 'compile_id', andernfalls werden Templates mit dem gleichen Namen überschrieben. Sie können die Variable $compile_id auch einmalig setzen, anstatt sie bei jedem Aufruf von 'fetch()' zu übergeben.
Example 13.14. fetch
<?php include("Smarty.class.php"); $smarty = new Smarty; $smarty->caching = true; // Datenbank-Aufrufe nur durchführen, wenn kein Cache existiert if(!$smarty->is_cached("index.tpl")) { // Beispieldaten $address = "245 N 50th"; $db_data = array( "City" => "Lincoln", "State" => "Nebraska", "Zip" => "68502" ); $smarty->assign("Name","Fred"); $smarty->assign("Address",$address); $smarty->assign($db_data); } // ausgabe abfangen $output = $smarty->fetch("index.tpl"); // Etwas mit $output anstellen echo $output; ?>