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