Smarty模板學(xué)習(xí)筆記之Smarty簡介
1、簡介
Smarty是一個使用PHP寫出來的模板PHP模板引擎,是目前業(yè)界最著名的PHP模板引擎之一。它分離了邏輯代碼和外在的內(nèi)容,提供了一種易于管理和使用的方法,用來將原本與HTML代碼混雜在一起PHP代碼邏輯分離。簡單的講,目的就是要使PHP程序員同前端分離,使PHP程序員改變程序的邏輯內(nèi)容不會影響到前端的頁面設(shè)計,前端重新修改頁面不會影響到程序的程序邏輯,這在多人合作的項目中顯的尤為重要。
2、那么smarty有什么優(yōu)點呢?
a、速度:采用Smarty編寫的程序可以獲得最大速度的提高,這一點是相對于其它的模板引擎技術(shù)而言的。
b、編譯型:采用Smarty編寫的程序在運行時要編譯成一個非模板技術(shù)的PHP文件,這個文件采用了PHP與HTML混合的方式,在下一次訪問模板時將WEB請求直接轉(zhuǎn)換到這個文件中,而不再進(jìn)行模板重新編譯(在源程序沒有改動的情況下)
c、緩存技術(shù):Smarty選用的一種緩存技術(shù),它可以將用戶最終看到的HTML文件緩存成一個靜態(tài)的HTML頁,當(dāng)設(shè)定Smarty的cache屬性為true時,在Smarty設(shè)定的cachetime期內(nèi)將用戶的WEB請求直接轉(zhuǎn)換到這個靜態(tài)的HTML文件中來,這相當(dāng)于調(diào)用一個靜態(tài)的HTML文件。
d、插件技術(shù):Smarty可以自定義插件。插件實際就是一些自定義的函數(shù)。
e、模板中可以使用if/elseif/else/endif。在模板文件使用判斷語句可以非常方便的對模板進(jìn)行格式重排。
3、不過,在下面情況時使用smarty需留意
a、需要實時更新的內(nèi)容。例如像股票顯示,它需要經(jīng)常對數(shù)據(jù)進(jìn)行更新,這類型的程序使用smarty會使模板處理速度變慢。
b、小項目。小項目因為項目簡單而美工與程序員兼于一人的項目,使用Smarty會在一定程度上喪失PHP開發(fā)迅速的優(yōu)點。
(PS:不過為了整個項目的規(guī)范,請大家嘗試去使用模板引擎。其實習(xí)慣了,開發(fā)速度會更加快,以上是沒有用習(xí)慣模板引擎的開發(fā)者遇到的問題)
相關(guān)文章
PHP面向?qū)ο蟪绦蛟O(shè)計之構(gòu)造方法和析構(gòu)方法詳解
這篇文章主要介紹了PHP面向?qū)ο蟪绦蛟O(shè)計之構(gòu)造方法和析構(gòu)方法,結(jié)合具體實例形式詳細(xì)分析了php面向?qū)ο蟪绦蛟O(shè)計中構(gòu)造方法和析構(gòu)方法的相關(guān)概念、原理、用法及操作注意事項,需要的朋友可以參考下2019-06-06解析Extjs與php數(shù)據(jù)交互(增刪查改)
本篇文章是對Extjs與php數(shù)據(jù)交互(增刪查改)進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06php cookie名使用點號(句號)會被轉(zhuǎn)換
php cookie名不能使用點號(句號),應(yīng)該說可以使用點號的cookie名,但會被轉(zhuǎn)換,要知道為什么,祥看本文2014-10-10Yii框架調(diào)試心得--在頁面輸出執(zhí)行sql語句
這篇文章主要介紹了Yii框架調(diào)試心得--在頁面輸出執(zhí)行sql語句,需要的朋友可以參考下2014-12-12php數(shù)組函數(shù)序列之krsort()- 對數(shù)組的元素鍵名進(jìn)行降序排序,保持索引關(guān)系
krsort() 函數(shù)將數(shù)組按照鍵逆向排序,為數(shù)組值保留原來的鍵??蛇x的第二個參數(shù)包含附加的排序標(biāo)志2011-11-11