我正在使用類似MVC的體系結構構建一個簡單的10頁的網站。值得學習Smarty模板引擎嗎?值得學習Smarty for PHP模板嗎?
回答
模板引擎增加開銷。
如果您需要其他人創建/編輯模板並且您不希望他們能夠使用PHP,則應該只使用模板引擎。
如果您是唯一的維護者,那麼您應該使用普通的PHP。如果你的團隊可以信任(他們都是開發者),那麼堅持使用普通的PHP。如果你有不懂PHP的設計師,更重要的是,讓他們使用PHP是危險的,那麼使用Smarty或其他模板引擎。
這就是說,你想知道你是否應該學習Smarty。如果使用Smarty創建模板,您需要學習Smarty。如果你只是實施Smarty模板引擎,你並不需要學習Smarty。
沒有必要。
一個10頁的網站很容易建立。如果你想使用Smarty的,你將不得不多花一點時間在一開始〜
Smarty的是模板引擎易於學習和使用,以瞭解它,但我強烈建議學習和使用Twig代替。
當您動態生成HTML時,模板語言是一個不錯的選擇。無論是Smarty還是別的(對於PHP),Razor或Forms(對於ASP.NET),或者完全不同的東西(可能是John Resig的client-side micro-templating框架)。
PHP本身就是一個體面的模板語言。除非需要高級功能,否則定製解決方案只會使聽起來像一個相當簡單的設置變得複雜。
我從來沒有注意到smarty。其他人嚇跑我說這是非常複雜的。我使用Twig來處理我現在所做的一切,甚至是小事。即使這對於一個小型站點來說是不值得的,我認爲這是值得長期學習的 - 在模板繼承和塊中獲得良好的基礎是絕對值得的。
檢查了這一點:
<?php echo htmlspecialchars(\$var, ENT_QUOTES, 'UTF-8') ?>
與
{{ var|escape }}
美味:
{% for i in 0..10 %}
* {{ i }}
{% endfor %}
很久以前我用過Smarty我推薦你不需要使用這種模板引擎。 Smarty減慢整個系統的速度,因爲它的核心源代碼非常複雜,並且不必要。如果我有模板引擎的建議,我會說:
1)使用一些基本和輕的模板引擎,如XTemplate。我不確定它是否仍在開發中,但它確實有用,所有內容都放在一個類文件中,隨時可以使用。語法也清晰而甜美。
2)寫您自己的模板引擎,以便您可以自己定製它最適合您當前的系統。
但是,對於小型和小型項目(少於5-7頁),您可以控制所有內容,然後使用模板引擎可能是不必要的。
- 1. 值得學習SharePoint 2007嗎?
- 2. Haxe值得學習嗎?
- 3. Tkinter值得學習嗎?
- 4. GroupLayout:它值得學習嗎?
- 5. 值得學習PDO嗎?
- 6. 2014年值得學習ColdFusion嗎?
- 7. 值得花時間學習Qt(C++)嗎?
- 8. 主塔仍值得學習嗎?
- 9. Adobe Flex仍然值得學習嗎?
- 10. 值得學習使用MSBuild嗎?
- 11. VB 6今天值得學習嗎?
- 12. 值得努力學習D嗎?
- 13. 值得學習AMD特定的API嗎?
- 14. PHP難以學習嗎?
- 15. 首先學習Cocoa for Leopard,然後學習Cocoa Touch for iPhone有意義嗎?
- 16. php smarty模板結構
- 17. 學習Python之前是否值得學習C/C++?
- 18. 在線課程學習PHP與Rails for Zombies相似嗎?
- 19. 是否Telerik openaccess ORM值得學習?
- 20. 學習PHP之前學習C/C++是必須的嗎?
- 21. AWS機器學習 - Django的模板
- 22. 學習彙編語言是否值得?
- 23. 在SMARTY模板
- 24. Smarty模板i18n
- 25. smarty模板
- 26. Smarty的PHP /模板輸出問題
- 27. 是COBOL仍然值得我們學習
- 28. JavaScript - 剛剛學習FOR
- 29. 學習PHP錯誤
- 30. 學習基本的PHP和實時工作或學習核心PHP更好嗎?
我認爲MVC對於一個10頁的網站來說太過分了:P – BoltClock 2011-05-17 04:24:02
PHP的最佳PHP模板語言是PHP。 [使用PHP](http://thephppro.com/articles/pte.php)。 – meagar 2011-05-17 04:32:52
一旦你明白如何幹淨地使用有紀律的模板方法,你可以在引擎中使用嚴格的PHP規範。但是,如果您從未使用任何模板引擎,那麼您應該使用模板引擎,以便您知道如何保持模板分離和清潔。 – Kzqai 2012-02-13 01:28:16