1. 程式人生 > >Smarty模板

Smarty模板

左右 gdi tro 9.png 分享 會有 con config col

Smarty是為了實現代碼的前後端分離的,也就是它能夠把php代碼和網頁的代碼分開。

技術分享

Smarty的配置文件

<?php

echo __FILE__;    //取到當前文件的路徑。兩邊都是雙下劃線。

define("ROOT",str_replace("\\","/",dirname(__FILE__)).‘/‘); //常量ROOT中指定項目根目錄

define   //是用來定義一個常量,這個常量一般是不會變的。常量一般是大寫的,變量是小寫的。
//定義一個常量叫做ROOT,它的值是逗號後面那些。 也就是當前文件的路徑。

$smarty -> auto_literal = false
; //就可以讓定界符號使用空格。 //smarty這個對象調用auto_literal方法把其值設置為false關閉,就可以讓定界符也就是"{" 花括號裏 //面的內容可以使用空格。因為花括號裏面如果沒有空格就會被解析,如果有空格就會被解析掉。這裏設置為關 //閉之後就代表設置的定界符裏面允許使用空格。這樣造成的後果就是樣式表內或者JS裏面因為他們裏面有空格 //所以就可能會被解析掉。 $smarty->setTemplateDir(ROOT.‘templates/‘); //設置所有模板文件存放的位置 $smarty->addTemplateDir(ROOT.‘templates2/‘); //追加一個模板文件夾,可以用來存放模板
$smarty->setCompileDir(ROOT.‘templates_c/‘); //設置編譯過的文件存放的文件夾 $smarty->addPluginsDir(ROOT.‘plugins/‘); //設置為模板擴充插件存放目錄 //這裏不能用set如果用set的話,這個Smart裏面自帶的插件就沒法使用了。只能用add來追加一個文件夾 $smarty->setCacheDir(ROOT.‘cache/‘); //設置緩存文件存放目錄 $smarty->setConfigDir(ROOT.‘configs/‘); //設置模板配置文件存放目錄 $smarty->caching = false
; //設置Smarty緩存開關功能 $smarty->cache_lifetime = 60*60*24; //設置緩存模板有效時間一天 $smarty->left_delimiter = ‘<{‘; //設置模板語言中的左結束符 $smarty->right_delimiter = ‘}>‘; //設置模板語言中的右結束符 //這裏把定界符改成<{ 和 }> 這樣就避免解析錯了,出問題。 把定界符改成了一個特殊的符號。 ?>

Smarty裏都是根據project這個文件夾的路徑來找的,只要知道了project這個文件夾的路徑,那麽其他的所有文件都可以找到。

Smarty裏面所有的文件夾解讀:

技術分享

//cache裏面是用來存放緩存文件的。

//configs是用來存放配置文件的。

//css是用來存放樣式。js是用來存放js

//main是用來存放程序的文件。是一個專門用來寫訪問的頁面的文件夾,所以訪問的都是php頁面。

//plugins是用來存放自己寫的插件的。  

//templates是用來存放模板文件的     就是存放對應模板的

//templates_c是用來存放編譯後的文件的。

//init.inc.php這個文件相當於是個入口文件。也就是說所有使用Smarty的頁

//面首先都要把這個文件引入才能夠使用。

// libs文件夾是Smarty核心文件夾。打開如下

技術分享

//plugins文件夾裏面放的是插件. sysplugins放的是系統插件.這兩個文件夾都是用來存放插件的。

//Smarty.class.php是核心文件,是個類。裏面一定包含一些東西如左右分隔符,一個存儲變量的

//數組也有,裏面的一個註冊變量的方法會有,一個顯示模板的方法也會有。是個核心的類文件

Smarty模板