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