首先到 http://www.smarty.net 上下載最新的smarty模板引擎,解壓Smarty-2.6.26.zip,改名Smarty-2.6.26目錄為smarty。
拷貝smarty目錄到你希望的目錄 D:\xampp\xampp\smarty。
在php.ini的include_path加入smarty庫目錄,如下:
include_path = “.;D:\xampp\xampp\php\PEAR;D:\xampp\xampp\smarty\libs”
在你的php項目目錄新建兩個子目錄放配置文件和模板:config 和templates
D:\xampp\xampp\htdocs\config
D:\xampp\xampp\htdocs\templates
smarty項目目錄新建兩個目錄cache和templates_c存放緩存和編譯過的模板:
D:\xampp\xampp\smarty\cache
D:\xampp\xampp\smarty\templates_c
在需要調用smarty庫的php文件中寫入代碼:
1
2
3
4
5
6
7
8
9
10
11
//this is D:\xampp\xampp\htdocs\index.php
//load smarty library
require(
'Smarty.class.php');
$smarty=
new Smarty();
$smarty->
template_dir=
'd:/xampp/xampp/htdocs/templates';
//指定模板存放目錄
$smarty->
config_dir=
'd:/xampp/xampp/htdocs/config';
//指定配置文件目錄
$smarty->
cache_dir=
'd:/xampp/xampp/smarty/cache';
//指定緩存目錄
$smarty->
compile_dir=
'd:/xampp/xampp/smarty/templates_c';
//指定編譯後的模板目錄
$smarty->
assign(
'name',
'fish boy!');
$smarty->
display(
'index.tpl');
再新建一個D:\xampp\xampp\htdocs\templates\index.tpl文件
1
2
3
4
5
6
7
8
9
10
<
html>
<
head><
title>hello,{$name}!</
title>
<
script language=
"javascript" type=
"text/javascript">
alert('{$name}');
</
script>
</
head>
<
body>
hello,{$name}!
</
body>
</
html>
打開http://localhost/index.php 應該會彈出fish boy!警告,然後內容為hello,fish boy!!的頁面。
我們可以改進一下,不可能每次需要smarty寫這麼多配置代碼吧。
新建文件 D:\xampp\xampp\htdocs\smarty_connect.php
1
2
3
4
5
6
7
8
9
10
11
//load smarty library
require(
'Smarty.class.php');
class smarty_connect
extends Smarty
{
function smarty_connect()
{
//每次構造自動調用本函數
$this->
template_dir=
'd:/xampp/xampp/htdocs/templates';
$this->
config_dir=
'd:/xampp/xampp/htdocs/config';
$this->
cache_dir=
'd:/xampp/xampp/smarty/cache';
$this->
compile_dir=
'd:/xampp/xampp/smarty/templates_c';
}
}
D:\xampp\xampp\htdocs\index.php改為:
1
2
3
4
require(
'smarty_connect.php');
$smt=
new smarty_connect;
$smt->
assign(
'name',
'fish boy!');
$smt->
display(
'index.tpl');
index.tpl文件不變,打開localhost/index.php,出現了同樣的輸出。