Smaty優點:1.代碼分離 2.緩存技術
使用步驟:
1.下載Smaty模板
2.將模板中那個lib文件夾復制到項目中(一般為根目錄,并且重命名在此命名為Smarty),
3.配置PHP
1.新建一個Smarty_inc.php文件
2.輸入
Include_once("Smarty/Smarty.class.php");//包含Smarty類
$smarty=new Smarty();//實例化Smarty對象
//配置
<table border="1" cellpadding="0" cellspacing="0" valign="top" style="direction:ltr; border-collapse:collapse; border-style:solid; border-color:#A3A3A3; border-width:1pt; margin-left:.7076in"><tbody><tr><td style="border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:2.6611in; padding:4pt 4pt 4pt 4pt"><p lang="en-US" style="margin:0in; font-family:Calibri; font-size:10.5pt">$smarty->config_dir="Smaryt/Config_File.class.php";</p></td><td style="border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:3.0937in; padding:4pt 4pt 4pt 4pt"><p style="margin:0in; font-family:SimSun; font-size:10.5pt">配置文件目錄路徑,一般不更改</p></td></tr><tr><td style="border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:2.6611in; padding:4pt 4pt 4pt 4pt"><p lang="en-US" style="margin:0in; font-family:Calibri; font-size:10.5pt">$smarty->caching=false;</p></td><td style="border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:3.0937in; padding:4pt 4pt 4pt 4pt"><p style="margin:0in; font-family:SimSun; font-size:10.5pt">是否開啟緩存</p></td></tr><tr><td style="border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:2.6611in; padding:4pt 4pt 4pt 4pt"><p lang="en-US" style="margin:0in; font-family:Calibri; font-size:10.5pt">$smarty->template_dir="./templates";</p></td><td style="border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:3.0937in; padding:4pt 4pt 4pt 4pt"><p style="margin:0in; font-size:10.5pt"><span lang="zh-CN" style="font-family:SimSun">設置模板目錄,手動創建,</span><span lang="en-US" style="font-family:Calibri">./</span><span lang="zh-CN" style="font-family:SimSun">代表當前目錄</span><span lang="en-US" style="font-family:Calibri"/><span lang="zh-CN" style="font-family:SimSun; color:red">必須設置</span></p></td></tr><tr><td style="border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:2.6611in; padding:4pt 4pt 4pt 4pt"><p lang="en-US" style="margin:0in; font-size:10.5pt"><span style="font-family:Calibri">$samrty->complie_dir="./templates</span><span style="font-family:SimSun">_c</span><span style="font-family:Calibri">";</span></p></td><td style="border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:3.0937in; padding:4pt 4pt 4pt 4pt"><p style="margin:0in; font-size:10.5pt"><span lang="zh-CN" style="font-family:SimSun">設置編譯目錄,手動創建,</span><span lang="en-US" style="font-family:Calibri; color:red"/><span lang="zh-CN" style="font-family:SimSun; color:red">必須設置</span></p></td></tr><tr><td style="border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:2.6611in; padding:4pt 4pt 4pt 4pt"><p lang="en-US" style="margin-top:0in; margin-right:0in; margin-bottom:0in; margin-left:0in; font-family:Calibri; font-size:10.5pt">$smarty->cache_dir="./smarty_cache";</p></td><td style="border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:3.0937in; padding:4pt 4pt 4pt 4pt"><p style="margin-top:0in; margin-right:0in; margin-bottom:0in; margin-left:0in; font-family:SimSun; font-size:10.5pt">設置緩存目錄</p></td></tr><tr><td style="border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:2.6611in; padding:4pt 4pt 4pt 4pt"><p style="margin-top:0in; margin-right:0in; margin-bottom:0in; margin-left:0in; font-size:10.5pt"><span lang="en-US" style="font-family:Calibri">$smarty->left_delimiter="{";</span><span lang="zh-CN" style="font-family:SimSun">和</span><span lang="en-US" style="font-family:Calibri">$smarty->right_delimiter="}";</span></p></td><td style="border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:3.0937in; padding:4pt 4pt 4pt 4pt"><p style="margin:0in; font-size:10.5pt"><span lang="zh-CN" style="font-family:SimSun">設置在</span><span lang="en-US" style="font-family:Calibri">HTML</span><span lang="zh-CN" style="font-family:SimSun">標志</span><span lang="en-US" style="font-family:Calibri">Smarty</span><span lang="zh-CN" style="font-family:SimSun">的開始和結束標簽</span><span lang="en-US" style="font-family:Calibri"/><span lang="zh-CN" style="font-family:SimSun; color:red">自定義</span><span lang="en-US" style="font-family:Calibri; color:red"/><span lang="zh-CN" style="font-family:SimSun; color:red">也可以世</span><span lang="en-US" style="font-family:Calibri; color:red">{%</span><span lang="zh-CN" style="font-family:SimSun; color:red">和</span><span lang="en-US" style="font-family:Calibri; color:red">%}</span></p></td></tr></tbody></table>
Smarty使用變量
定義變量
$smarty->assign("模板變量","值/數組");
將改變量應用到特定的模板中
$smarty->display("模板名");
Eg:
~~~
$smarty->assign("title","我的第一個smarty程序");
$smarty->display("index.html");
在index.html中使用
<html>
<head>
<title>{$title}</title>
</head>
</html>
~~~
上述一次只能訪問一個變量那么**怎樣循環訪問多個變量呢**?**
要想訪問多個變量必須用到數組
定義
~~~
$array={name->"jiangtong",name->"張三",name->"李四"}
$smarty->assign($student,$name);
$smarty->display("index.html");
~~~
**在**index.html**中使用**
<html>
<head></head>
<body>、
<table border="1" cellpadding="0" cellspacing="0" valign="top" style="direction:ltr; border-collapse:collapse; border-style:solid; border-color:#A3A3A3; border-width:1pt; margin-left:.3333in"><tbody><tr><td style="border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:2.7409in; padding:4pt 4pt 4pt 4pt"><p lang="en-US" style="margin:0in; font-family:Calibri; font-size:10.5pt">{section name="stuList"? loop="$student"}</p></td><td style="border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.6715in; padding:4pt 4pt 4pt 4pt"><p style="margin:0in; font-size:10.5pt"><span lang="en-US" style="font-family:Calibri">loop</span><span lang="zh-CN" style="font-family:SimSun">代表循環那個數組</span></p></td></tr><tr><td style="border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:2.7409in; padding:4pt 4pt 4pt 4pt"><p lang="en-US" style="margin:0in; font-size:10.5pt"><span style="font-family:Calibri"><p>{$student</span><span style="font-family:SimSun">[</span><span style="font-family:Calibri">stuList</span><span style="font-family:SimSun">].name</span><span style="font-family:Calibri">}</p></span></p></td><td style="border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.6715in; padding:4pt 4pt 4pt 4pt"><p style="margin:0in; font-family:SimSun; font-size:10.5pt">?</p></td></tr><tr><td style="border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:2.7409in; padding:4pt 4pt 4pt 4pt"><p lang="en-US" style="margin:0in; font-family:Calibri; font-size:10.5pt"><sectionelse></p><p style="margin:0in; font-size:10.5pt"><span lang="en-US" style="font-family:Calibri">//</span><span lang="zh-CN" style="font-family:SimSun">可以不寫</span></p></td><td style="border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.6715in; padding:4pt 4pt 4pt 4pt"><p lang="en-US" style="margin:0in; font-family:Calibri; font-size:10.5pt">?</p></td></tr><tr><td style="border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:2.7409in; padding:4pt 4pt 4pt 4pt"><p lang="en-US" style="margin:0in; font-family:Calibri; font-size:10.5pt">{/section}</p></td><td style="border-style:solid; border-color:#A3A3A3; border-width:1pt; vertical-align:top; width:1.6715in; padding:4pt 4pt 4pt 4pt"><p lang="en-US" style="margin:0in; font-family:Calibri; font-size:10.5pt">?</p></td></tr></tbody></table>
<body>
</html>
Smarty取出當前時間
{$smarty.now}