Description
void
display ( string template [, string cache_id [, string compile_id]])
This displays the template unlike
fetch().
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.
As an optional third parameter, you can pass a
$compile_id.
This is in the event that you want to compile different versions of
the same template, such as having separate templates compiled
for different languages. Another use for
$compile_id is when you use more than one
$template_dir
but only one $compile_dir.
Set a separate $compile_id for each
$template_dir, otherwise
templates of the same name will overwrite each other. You can
also set the $compile_id
variable once instead of passing this to each call to this function.
Example 13-1. display()
<?php include("Smarty.class.php"); $smarty = new Smarty; $smarty->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);
}
// display the output $smarty->display("index.tpl"); ?>
|
|
Use the syntax for template resources to
display files outside of the
$template_dir directory.
Example 13-2. function display() template resource examples
<?php // absolute filepath $smarty->display('/usr/local/include/templates/header.tpl');
// absolute filepath (same thing) $smarty->display('file:/usr/local/include/templates/header.tpl');
// windows absolute filepath (MUST use "file:" prefix) $smarty->display('file:C:/www/pub/templates/header.tpl');
// include from template resource named "db" $smarty->display('db:header.tpl'); ?>
|
|
See also fetch() and
template_exists().