fetch()returns the template outputDescriptionstringfetchstringtemplatestringcache_idstring$compile_id
This returns the template output instead of
displaying it.
Supply a valid template resource
type and path. As an optional second parameter, you can pass a
$cache id, see the caching
section for more information.
¶meter.compileid;
fetch()
caching = true;
// only do db calls if cache doesn't exist
if(!$smarty->is_cached('index.tpl')) {
// dummy up some data
$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);
}
// capture the output
$output = $smarty->fetch('index.tpl');
// do something with $output here
echo $output;
?>
]]>
Using fetch() to send an email
The email_body.tpl template
The email_disclaimer.tpl template which uses the
{textformat} modifier.
The php script using the PHP
mail() function
getRow($sql);
$smarty->assign('contact', $contact);
mail($contact['email'], 'Subject', $smarty->fetch('email_body.tpl'));
?>
]]>
See also
{fetch}display(),
{eval},
and
template_exists().