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