一.Smarty的配置
include_once("Smarty/Smarty.class.php"); //包含smarty类文件
$smarty = new Smarty(); //建立smarty实例对象$smarty
$smarty->config_dir="Smarty/Config_File.class.php"; // 目录变量
$smarty->caching=false; //是否使用缓存,项目在调试期间,不建议启用缓存
$smarty->template_dir = "./templates"; //设置模板目录
$smarty->compile_dir = "./templates_c"; //设置编译目录
$smarty->cache_dir = "./smarty_cache"; //缓存文件夹
//----------------------------------------------------
//左右边界符,默认为{},但实际应用当中容易与JavaScript相冲突
//----------------------------------------------------
$smarty->left_delimiter = "{";
$smarty->right_delimiter = "}";
二.Smarty的应用
$smarty->assign("模板变量", "值(数组/变量)");
$smarty->display("模板名称");
例子:
$smarty->assign("name", "测试"); //进行模板变量替换
$smarty->display("index.htm"); // 该文件就是模板文件,应该在模板目录下
<html>
<title>{$name}</title>
……
三.Smarty循环
{section name=s loop=$stu}
{$stu[s].name}
{sectionelse}
无内容
{/section}
四.例子:
index.php
<?php
include("smarty_inc.php");
$href = array(array("name"=>"新闻第一条","date"=>"2011-1-16"),array("name"=>"php100","date"=>"2011-1-16"),array("name"=>"新闻第二条","date"=>"2011-1-16"),array("name"=>"新闻第三条","date"=>"2011-1-16"),array("name"=>"新闻第四条","date"=>"2011-1-16"));
$row = array("新闻","内容","详情");
$name = "测试";
$smarty->assign("href",$href);
$smarty->assign("title",$name);
$smarty->assign("row",$row);
$smarty->display("index.htm");
?>
index.htm
<html>
{section name=shuzu loop=$row}
{$row[shuzu]}
{/section}
<hr>
<b>{$title}</b></br>
{section name=list loop=$href}
<a>
{$href[list].name}-{$href[list].date}
</a></br>
{/section}
</html>