thinkphp是一個開源輕量級PHP框架,是用來簡化企業級應用開發和敏捷WEB應用開發的;使用ThinkPHP,開發者可以更方便和快捷的開發和部署應用。Smarty是一個PHP模板引擎,可以更好的幫助開發者分離程序邏輯和頁面顯示(業務邏輯和顯示邏輯分離),使程序員改變程序的邏輯內容不會影響到前端人員的頁面設計,前端人員重新修改頁面不會影響到程序的程序邏輯。
本教程操作環境:Windows7系統、thinkphp6&&smarty4版、Dell G3電腦。
thinkphp是什么
ThinkPHP,是為了簡化企業級應用開發和敏捷WEB應用開發而誕生的開源輕量級PHP框架。
最早誕生于2006年初,2007年元旦正式更名為ThinkPHP,并且遵循Apache2開源協議發布。ThinkPHP從誕生以來一直秉承簡潔實用的設計原則,在保持出色的性能和至簡的代碼的同時,也注重易用性。并且擁有眾多原創功能和特性,在社區團隊的積極參與下,在易用性、擴展性和性能方面不斷優化和改進。
立即學習“PHP免費學習筆記(深入)”;
ThinkPHP是一個快速、兼容而且簡單的輕量級國產PHP開發框架,誕生于2006年初,原名FCS,2007年元旦正式更名為ThinkPHP,遵循Apache2開源協議發布,從Struts結構移植過來并做了改進和完善,同時也借鑒了國外很多優秀的框架和模式,使用面向對象的開發結構和MVC模式,融合了Struts的思想和TagLib(標簽庫)、RoR的ORM映射和ActiveRecord模式。
ThinkPHP可以支持windows/Unix/Linux等服務器環境,正式版需要PHP5.0以上版本支持,支持MySql、PgSQL、Sqlite多種數據庫以及PDO擴展,ThinkPHP框架本身沒有什么特別模塊要求,具體的應用系統運行環境要求視開發所涉及的模塊。
作為一個整體開發解決方案,ThinkPHP能夠解決應用開發中的大多數需要,因為其自身包含了底層架構、兼容處理、基類庫、數據庫訪問層、模板引擎、緩存機制、插件機制、角色認證、表單處理等常用的組件,并且對于跨版本、跨平臺和跨數據庫移植都比較方便。并且每個組件都是精心設計和完善的,應用開發過程僅僅需要關注您的業務邏輯。
優點:
1、易于上手,有豐富的中文文檔;
2、學習成本低,社區活躍度高;
3、框架的兼容性較強,PHP4和PHP5完全兼容、完全支持UTF8等。
4、 適合用于中小項目的開發。
5、完全符合現代PHP的MVC框架理念;
6、結合了Thinkphp的數據庫框架ORM,只要懂TP,用我們這個框架毫無違和感。
缺點:
1、對Ajax的支持不是很好;
2、目錄結構混亂,需要花時間整理;
3、上手容易,但是深入學習較難。
smarty是什么
Smarty是一個使用PHP寫出來的模板引擎,是業界最著名的PHP模板引擎之一。它分離了邏輯代碼和外在的內容,提供了一種易于管理和使用的方法,用來將原本與HTML代碼混雜在一起PHP代碼邏輯分離。
Smarty可以更好的幫助開發者分離程序邏輯和頁面顯示,如在前后端分離的項目中,前后端為不同開發人員,那么Smarty便可以做到在互相不影響的情況下完美的實現前后臺的協作。并且業務邏輯和顯示邏輯分離,是Smarty的一個設計理念。
簡單的講,目的就是要使PHP程序員同前端人員分離,使程序員改變程序的邏輯內容不會影響到前端人員的頁面設計,前端人員重新修改頁面不會影響到程序的程序邏輯,這在多人合作的項目中顯的尤為重要。
Smart的一些特性
-
非??焖佟?/p>
-
比PHP內嵌到HTML中的做法要有效率的多。
-
比PHP內嵌到HTML中的做法要有效率的多。
-
無模板解析的開銷,只編譯一次。
-
僅當模板文件被修改后才會聰明地重新編譯。
-
你可以很容易創建自己的函數和變量修飾器,非常具有可擴展性。
-
可配置的模板定界符語法{delimiter}, 你可以使用{$foo}, {{$foo}}, 等等。
-
條件判斷語句 {if}..{elseif}..{else}..{/if} 會直接使用PHP解析,所以{if…}后可以是簡單或者較復雜的表達式。
-
支持無限的 sections, if等的嵌套。
-
內置緩存支持。
-
任意的模板源。
-
模板繼承 可以輕松管理模板和內容。
【相關教程推薦:thinkphp框架】