6月3日 smarty基础

时间:2022-07-10 14:15:47

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']}>&nbsp;<{$xx['ming']}></div>
</body>
</html>