詳細(xì)解讀PHP模板的作用
在學(xué)習(xí)PHP語言的時候,我們發(fā)現(xiàn),關(guān)于PHP模板的知識稍微會有點(diǎn)難以掌握。今天我們就為大家詳細(xì)的分析一下PHP模板的具體功能,加深大家對PHP語言的理解。#t#
,其實最重要的是適合自己的項目需求,而不是適合自己的習(xí)慣.比如一個企業(yè)的宣傳網(wǎng)站,訪問量不大,更新量也不大,用什么都一樣,甚至不用, 直接PHP+HTML寫可能速度最快.也沒什么不可.但是如果是一個新聞系統(tǒng),或者是內(nèi)容發(fā)布系統(tǒng).兩者這樣,就非常有必要用到模板這一技術(shù).因為他們都 有一個共通的地方,就是有一類頁面要用到同一個樣式的頁面設(shè)計.而根據(jù)實際情況,比如訪問量的大小,項目的緊急程度以及程序員對于模板技術(shù)的熟練程度,選 擇最適合項目的模板技術(shù)..這才是首選。”
“從開始學(xué)習(xí)php就開始接觸模板,我用的是smarty模板引 擎(官方支持,功能強(qiáng)大),使用時間越長越發(fā)覺得模板是個好東西。只要要涉及到頁面顯示的東西,我的都會用模板去寫,如果不用模板寫程序總覺得別扭。我想 其他的phper也會有相同的感覺,因為PHP模板設(shè)計的初衷是將代碼和頁面分離出來分別處理,畢竟誰也不愿意一邊寫代碼,一邊處理頁面。”
“有 人說SMARTY已經(jīng)很好了,但也有人說SUPERTPL更好,也有人更中意于PHPLIB我認(rèn)為每個模板都有自己優(yōu)點(diǎn),也有自己的不組,關(guān)鍵看你的項目 需要什么,用什么最好!”[來自feifengxlq]“用模板肯定是沒有錯的最初使用的是PHPLIB,使用過了一段時間后,感覺太簡單了,每個模板變 量都要寫代碼去替換,每引用一個模板也得寫一行代碼(也許PHPLIB有批量處理功能,我太菜不知道)因而放棄了,后來用plog建站的時候接觸到了 smarty,感覺smarty過于龐大,確實能加快開發(fā)進(jìn)度,但是很多功能實際都用不上,因此,最后還是自己寫了模板引擎,要模板實現(xiàn)的功能很簡單,就 是一個模板變量的替換功能,再加上include其他模板和foreach塊操作功能。”
“我還是用PHPLIB,不過,我會按 自已的經(jīng)驗與需要,寫一些函數(shù)或類來封裝最常用的一些針對模板輸出的處理。”[來自seraph]“我使用自己的PHP模板,還要寫模板解析代碼,累呀。我選擇 使用現(xiàn)有優(yōu)秀的模板。”[來自Bantu]“偶在別的論壇上看見一些很厲害的人不用模板...可能是沒到那種境界...個人感覺還是使用模板的好..至少 可以分工..加快開發(fā)速度。使用自己的模板? 感覺沒有必要哈...用現(xiàn)成的就行了..在現(xiàn)成的基礎(chǔ)上加上一些自己學(xué)要的實際功能。”[來自Phzzy] “我不使用模板引擎,但我也是使用模板,只是跟你們的不一樣。因為模板引擎太慢了感覺不好用。”
“我用第三方的,最好是開源的。 至于用哪個,看個人的愛好吧。”[來自leeyupeng]“我還是傾向于使用自己的模板簡單實用。”[來自夕日]“由于考慮到性能,我一般不使用通用的 模板,會根據(jù)實際情況做一些取舍,具有一定的局限性。”[來自Ben]“根據(jù)需要來決定使不使用模板,以及使用什么模板。靈活一點(diǎn)總是沒有壞處的。”[來 自xlmo]“個人喜歡簡單快速的模板,可以考慮用現(xiàn)成的PHP模板,不過一般會根據(jù)實際項目優(yōu)化一下,把里面用不到的一些功能刪除等。”
“使用模板一般倒不會導(dǎo)致瓶頸,至于會影響點(diǎn)效率主要這么幾點(diǎn):
1、程序和模板分離后,一個文件就變成兩個或者多個了,那讀取模板這個IO也是要點(diǎn)時間的
2、解析模板相對是比較復(fù)雜的,一般都需要N個 preg_match,preg_replace之類函數(shù)來處理或者替換
3、模板的載入和替換工作明顯需要比不使用模板占用更多的內(nèi)存
所以提高效率注意以下幾點(diǎn):
1、模板解析程序選用支持編譯和緩存的,這個對性能好處是最明顯,看自己怎么靈活應(yīng)用了
2、解析程序盡量簡單,什么功能都放進(jìn)去那用起來是方便了,性能也差了
3、做html的模板頁面時候也是遵從簡單的原則,比如按xhtml標(biāo)準(zhǔn)做,盡量不要把一個頁面拆成很多個模板然后再include。”
“如 果使用模版的話,我覺得有能力還是自己寫一個好。這也是鍛煉。不過要用我覺得小強(qiáng)很好。可以在可視化下編輯。”[來自jejwe]“我個人也認(rèn)為模板文件 的可視化編輯性非常重要。不能要求模板頁面的制作也要有相當(dāng)程序開發(fā)基礎(chǔ)的。”[來自seraph]“具體問題具體分析,PHP模板使用與否,選擇已經(jīng)成型的優(yōu) 秀模板類還是自己去寫,一切都是根據(jù)具體的項目開發(fā)而言的,不能死求哪一個的。”[來自Deepseath]“感覺現(xiàn)有的那些模版不夠完善,要么功能少, 要么速度慢,還是自己做的好。”
“總結(jié),PHP模板可以讓你的代碼脈絡(luò)更加清晰,結(jié)構(gòu)更加合理化。但是,PHP模板的發(fā)展總是會 比PHP應(yīng)用的迅速發(fā)展緩慢許多,在這種情況下,反而會影響到PHP應(yīng)用的開發(fā)。對于每一個PHPer來說,沒有一個PHP模板對他是最合適、最完美的。 因為所謂的PHP模板就是大眾化的東西,并不是針對個人的。所以,如果能在對PHP特點(diǎn)、應(yīng)用有清楚的認(rèn)識的基礎(chǔ)上充分認(rèn)識到模板的優(yōu)劣勢和該P(yáng)HP應(yīng)用 原理,PHPer就能得到自己需要的適合自己開發(fā)風(fēng)格的PHP模板。這也是PHP最重要的思想之一,PHP提供的只是方法、途徑,而不是最終解決方案。所 以模板和PHP應(yīng)用、產(chǎn)品一樣都可以改造為自己的PHP模板。因為這里面寄托著創(chuàng)造者的思想。
限于各種不同的條件限制,比如時 間、經(jīng)驗,所以大家可能認(rèn)為做一個自己的PHP模板是非常困難。其實,你需要的不是重新構(gòu)造一個PHP模板,而是選擇一個最貼近自己的PHP模板加以改 造。因為PHP需要繼承、創(chuàng)新。當(dāng)然,做一個自己的PHP模板一步一步地實現(xiàn),并及時融入最新的思想和理念。個人PHPer可以從細(xì)節(jié)做起,從自己最需要 的地方、自己的開發(fā)習(xí)慣做起。PHPer團(tuán)隊可以分工協(xié)作進(jìn)行PHP模板本地化,尤其對于公司而言尤為實用。就算你只是修改了PHP模板里面的一個符號, 僅僅是一個符號也能說明你對它加以了改造,它就是屬于你的。最重要的是,屬于自己的PHP模板永遠(yuǎn)不是固定不變的,它將伴隨你一直成長,也會成為你的 PHP歷程的見證。
PHP不需要非常精通的語法;PHP不需要你自己去開發(fā)眾多的庫;PHP不需要你去為性能、穩(wěn)定性等語言自身的特性而擔(dān)心。PHP需要的是你的邏輯;PHP需要的是你的創(chuàng)造力;PHP需要的是你的思想!”