thinkphp不是一個開發(fā)工具,而是一個為了簡化企業(yè)級應用開發(fā)和敏捷WEB應用開發(fā)而誕生的開源輕量級PHP框架;該框架可以支持windows/unix/linux等服務器環(huán)境,并且支持mysql、PgSQL、sqlite多種數(shù)據(jù)庫。
本文操作環(huán)境:Windows7系統(tǒng)、thinkphp v5.1版、Dell G3電腦。
thinkphp是一個開發(fā)工具嗎?
thinkphp不是一個開發(fā)工具,而是一個為了簡化企業(yè)級應用開發(fā)和敏捷WEB應用開發(fā)而誕生的開源輕量級PHP框架。
ThinkPHP是一個快速、兼容而且簡單的輕量級國產(chǎn)PHP開發(fā)框架,誕生于2006年初,原名FCS,2007年元旦正式更名為ThinkPHP,遵循Apache2開源協(xié)議發(fā)布,從struts結構移植過來并做了改進和完善,同時也借鑒了國外很多優(yōu)秀的框架和模式,使用面向對象的開發(fā)結構和mvc模式,融合了Struts的思想和TagLib(標簽庫)、RoR的ORM映射和ActiveRecord模式。
立即學習“PHP免費學習筆記(深入)”;
ThinkPHP可以支持windows/Unix/Linux等服務器環(huán)境,正式版需要PHP5.0以上版本支持,支持MySql、PgSQL、Sqlite多種數(shù)據(jù)庫以及pdo擴展,ThinkPHP框架本身沒有什么特別模塊要求,具體的應用系統(tǒng)運行環(huán)境要求視開發(fā)所涉及的模塊。
作為一個整體開發(fā)解決方案,ThinkPHP能夠解決應用開發(fā)中的大多數(shù)需要,因為其自身包含了底層架構、兼容處理、基類庫、數(shù)據(jù)庫訪問層、模板引擎、緩存機制、插件機制、角色認證、表單處理等常用的組件,并且對于跨版本、跨平臺和跨數(shù)據(jù)庫移植都比較方便。并且每個組件都是精心設計和完善的,應用開發(fā)過程僅僅需要關注您的業(yè)務邏輯。
分層架構
ThinkPHP的分層架構采用三層架構模式:
-
表現(xiàn)層
包含模板視圖、用戶界面、JS、Flash等通過模板引擎的支持,可以使用標簽定義簡化表現(xiàn)層的定義工作。
-
業(yè)務層
包含業(yè)務接口層、業(yè)務邏輯層、實體層、數(shù)據(jù)訪問層Action控制器作為業(yè)務接口層,提供系統(tǒng)各種業(yè)務操作的入口。因此,不提倡在控制器類中寫過多的業(yè)務邏輯代碼,雖然說很難嚴格控制。具體的業(yè)務邏輯應該封裝到數(shù)據(jù)訪問對象(Dao)類中實現(xiàn),如果覺得過于復雜,還可以把子業(yè)務在Helper類中包裝后統(tǒng)一調(diào)用。業(yè)務處理過程一般會構造出業(yè)務實體對象(如Vo對象),對業(yè)務實體對象的存取通過數(shù)據(jù)訪問層完成。數(shù)據(jù)訪問層把實體對象和數(shù)據(jù)庫數(shù)據(jù)之間建立映射關系,并且封裝了通用的數(shù)據(jù)操作。
-
數(shù)據(jù)層
支持的數(shù)據(jù)庫有MySql、mssql、PgSql、oracle、Sqlite,最新版本已經(jīng)提供PDO的支持,數(shù)據(jù)庫的選用和業(yè)務邏輯沒有關系。
推薦學習:《最新的10個thinkphp視頻教程》