smarty将php代码和HTML代码分开,形成两个页面,通过在php页面引用smarty配置文件,利用php控制HTML页面显示
配置文件:init.inc.php,放入需要使用的文件夹
必须建相关文件夹
<?php
define("ROOT",str_replace("\\","/",dirname(__FILE__)).'/'); //常量ROOT中指定项目根目录
//echo str_replace("\\","/",dirname(__FILE__))."/";
require ROOT.'libs/Smarty.class.php'; //加载Smarty类文件
$smarty = new Smarty(); //实例化Smarty对象<br>
//$smarty -> auto_literal = false; //就可以让定界符号使用空格
$smarty->setTemplateDir(ROOT.'templates/'); //设置所有模板文件存放位置
//$smarty->addTemplateDir(ROOT.'templates2/'); //添加一个模板文件夹
$smarty->setCompileDir(ROOT.'templates_c/'); //设置编译过的模板存放的目录
$smarty->addPluginsDir(ROOT.'plugins/'); //设置为模板扩充插件存放目录
$smarty->setCacheDir(ROOT.'cache/'); //设置缓存文件存放目录
$smarty->setConfigDir(ROOT.'configs/'); //设置模板配置文件存放目录
$smarty->caching = false; //设置Smarty缓存开关功能
$smarty->cache_lifetime = 60*60*24; //设置缓存模板有效时间一天
$smarty->left_delimiter = '<{'; //设置模板语言中的左结束符
$smarty->right_delimiter = '}>'; //设置模板语言中的右结束符
?>
例:main.php:
<?php
include("../init.inc.php");
$name = "张三";//字符串
$attr = array("shi"=>"淄博", "ming"=>"李密" );//关联数组
$smarty->assign("name",$name);//添加
$smarty->assign("xx",$attr);
$smarty->display("main.html");//显示
main.html:
<html>
<head>
<meta charset="utf-8" />
</head>
<body>
<h1>主页面</h1>
<div style="color:red">登陆者是:<{$name}></div>
<div>详细信息:<{$xx['shi']}> <{$xx['ming']}></div>
</body>
</html>