smarty模板引擎的簡介LOGIN

smarty模板引擎的簡介

1,什麼是模板引擎

       模板引擎(這裡特別指用於Web開發的模板引擎)是為了使用者介面與業務資料(內容)分離而產生的,它可以產生特定格式的文檔,用於網站的範本引擎就會產生一個標準的HTML文檔。模板引擎不屬於特定技術領域,它是跨領域跨平台的概念。在Asp下有模板引擎,在PHP下也有模板引擎,在C#下也有,甚至JavaScript、WinForm開發都會用到模板引擎技術。模版引擎的模板就是普通的文字文件,也不需要特別的副檔名,.html .htm .twig 都可以。模板內的 變數 和 表達式 會在運作的時候被解析替換,標籤(tags)會來控制模板的邏輯。

2,smarty模板引擎

#    Smarty是一個php模板引擎。更準確的說,它分開了邏輯程序和外在的內容,提供了一種易於管理的方法。可以被描述為應用程式設計師

和美工扮演了不同的角色,因為在大多數情況下 ,他們不可能是同一個人。例如,你正在創建一個用於瀏覽新聞的網頁,新聞標題,標籤

欄,作者和內容等都是內容要素,他們並不包含應該怎樣去呈現。在Smarty的程序裡,這些被忽略了。範本設計者編輯範本,組合使用

html標籤和範本標籤去格式化這些要素的輸出(html表格,背景色,字體大小,樣式表,等等)。有一天程式設計師想要改變文章檢索的方式(也

就是程式邏輯的改變)。這個改變不影響模板設計者,內容仍將準確的輸出到模板。同樣的,哪天美工吃多了想要完全重做介面,也不會

影響到程式邏輯。因此,程式設計師可以改變邏輯而不需要重新建構模板,模板設計者可以改變模板而不影響到邏輯。 smarty不嘗試將邏輯

完全和模板分開。如果邏輯程式嚴格的用於頁面表現,那麼它在模板裡不會出現問題。有個建議:讓應用程式邏輯遠離模板, 頁面表現

邏輯遠離應用程式邏輯。這將在以後使內容更容易管理,程序更容易升級。

3,smaty引擎的特點

模板編譯。為減少開銷,Smarty在預設情況下將模板轉換為可比較的PHP腳本,使得後續的呼叫速度更快。 Smarty也非常智能,內容改變後可以重新編譯。

快取. Smarty也提供了快取模板的選用功能。快取與編譯不同的是,支援快取不只是能產生快取的內容,還能防止執行個別邏輯。例如,你可以指定快取文件的生存時間,例如5分鐘,在此期間可以忽略與該範本相關的資料庫查詢。

高度可配置和可擴充。 Smarty的物件導向架構允許修改和擴展其預設行為。此外,從一開始可配置性就是一個設計目標,為使用者提供了很大的靈活性,透過內建方法和屬性自訂Smarty的行為。

安全。 Smarty提供了許多安全特性,可以避免伺服器和應用程式資料遭到設計人員有意或無意的破壞。


#下一節
<?php echo "smarty模板引擎的简介";
章節課件