fetch <methodsynopsis> <type>string</type><methodname>fetch</methodname> <methodparam><type>string</type><parameter>template</parameter></methodparam> <methodparam choice="opt"><type>string</type><parameter>cache_id</parameter></methodparam> <methodparam choice="opt"><type>string</type><parameter>compile_id</parameter></methodparam> </methodsynopsis> <para> Gibt die Ausgabe des Template zurück, anstatt es direkt anzuzeigen. Übergeben Sie einen gültigen <link linkend="template.resources">Template Ressource</link>-Typ und -Pfad. Als optionaler zweiter Parameter kann eine 'cache_id' übergeben werden. Bitte konsultieren Sie den Abschnitt über <link linkend="caching">caching </link> für weitere Informationen. </para> <para> 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 <link linkend="variable.compile.id">$compile_id</link> auch einmalig setzen, anstatt sie bei jedem Aufruf von 'fetch()' zu übergeben. </para> <example> <title>fetch 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; ?> ]]>