PHP四大主流框架的優(yōu)缺點(diǎn)總結(jié)

ThinkPHP
ThinkPHP(FCS)是一個(gè)輕量級(jí)的中型框架,是從Java的Struts結(jié)構(gòu)移植過(guò)來(lái)的中文PHP開(kāi)發(fā)框架。它使用面向?qū)ο蟮拈_(kāi)發(fā)結(jié)構(gòu)和MVC模式,并且模擬實(shí)現(xiàn)了Struts的標(biāo)簽庫(kù),各方面都比較人性化,熟悉J2EE的開(kāi)發(fā)人員相對(duì)比較容易上手,適合php框架初學(xué)者。 ThinkPHP的宗旨是簡(jiǎn)化開(kāi)發(fā)、提高效率、易于擴(kuò)展,其在對(duì)數(shù)據(jù)庫(kù)的支持方面已經(jīng)包括MySQL、MSSQL、Sqlite、PgSQL、 Oracle,以及PDO的支持。ThinkPHP有著豐富的文檔和示例,框架的兼容性較強(qiáng),但是其功能有限,因此更適合用于中小項(xiàng)目的開(kāi)發(fā)。

優(yōu)點(diǎn):
易于上手,有豐富的中文文檔;
框架的兼容性較強(qiáng),PHP4和PHP5完全兼容、完全支持UTF8等。
適合用于中小項(xiàng)目的開(kāi)發(fā)
缺點(diǎn):
對(duì)Ajax的支持不是很好;
目錄結(jié)構(gòu)混亂,需要花時(shí)間整理;
上手容易,但是深入學(xué)習(xí)較難。
Yii
Yii 是一個(gè)基于組件的高性能php框架,用于開(kāi)發(fā)大型Web應(yīng)用。Yii采用嚴(yán)格的OOP編寫(xiě),并有著完善的庫(kù)引用以及全面的教程。從 MVC,DAO/ActiveRecord,widgets,caching,等級(jí)式RBAC,Web服務(wù),到主題化,I18N和L10N,Yii提供了 今日Web 2.0應(yīng)用開(kāi)發(fā)所需要的幾乎一切功能。事實(shí)上,Yii是最有效率的PHP框架之一。

優(yōu)點(diǎn):
純OOP
用于大規(guī)模Web應(yīng)用
模型使用方便
開(kāi)發(fā)速度快,運(yùn)行速度也快。性能優(yōu)異且功能豐富
使用命令行工具。
缺點(diǎn):
對(duì)Model層的指導(dǎo)和考慮較少
文檔實(shí)例較少
英文太多
要求PHP技術(shù)精通,OOP編程要熟練!
View并不是理想view,理想中的view可能只是html代碼,不會(huì)涉及PHP代碼。
CodeIgniter
優(yōu)點(diǎn):
Code Igniter推崇“簡(jiǎn)單就是美”這一原則。沒(méi)有花哨的設(shè)計(jì)模式、沒(méi)有華麗的對(duì)象結(jié)構(gòu),一切都是那么簡(jiǎn)單。幾行代碼就能開(kāi)始運(yùn)行,再加幾 行代碼就可以進(jìn)行輸出??芍^是“大道至簡(jiǎn)”的典范。 配置簡(jiǎn)單,全部的配置使用PHP腳本來(lái)配置,執(zhí)行效率高;具有基本的路由功能,能夠進(jìn)行一定程度的路 由;具有初步的Layout功能,能夠制作一定程度的界面外觀;數(shù)據(jù)庫(kù)層封裝的不錯(cuò),具有基本的MVC功能. 快速簡(jiǎn)潔,代碼不多,執(zhí)行性能高,框架簡(jiǎn) 單,容易上手,學(xué)習(xí)成本低,文檔詳細(xì);自帶了很多簡(jiǎn)單好用的library,框架適合小型應(yīng)用.

缺點(diǎn):
本身的實(shí)現(xiàn)不太理想。內(nèi)部結(jié)構(gòu)過(guò)于混亂,雖然簡(jiǎn)單易用,但缺乏擴(kuò)展能力。 把Model層簡(jiǎn)單的理解為數(shù)據(jù)庫(kù)操作. 框架略顯簡(jiǎn)單,只能夠滿(mǎn)足小型應(yīng)用,略微不太能夠滿(mǎn)足中型應(yīng)用需要.

評(píng)價(jià):
總體來(lái)說(shuō),拿CodeIgniter來(lái)完成簡(jiǎn)單快速的應(yīng)用還是值得,同時(shí)能夠構(gòu)造一定程度的layout,便于模板的復(fù)用,數(shù)據(jù)操作層來(lái)說(shuō)封裝的不 錯(cuò),并且CodeIgniter沒(méi)有使用很多太復(fù)雜的設(shè)計(jì)模式,執(zhí)行性能和代碼可讀性上都不錯(cuò)。至于附加的library 也還不錯(cuò),簡(jiǎn)潔高效。

Lavarel 框架
優(yōu)點(diǎn):
Laravel 的設(shè)計(jì)思想是很先進(jìn)的,非常適合應(yīng)用各種開(kāi)發(fā)模式TDD, DDD 和BDD,作為一個(gè)框架,它準(zhǔn)備好了一切,composer 是個(gè)php 的未來(lái),沒(méi)有composer,PHP 肯定要走向沒(méi)落。
laravel 最大的特點(diǎn)和優(yōu)秀之處就是集合了php 比較新的特性,以及各種各樣的設(shè)計(jì)模式,
Ioc 容器,依賴(lài)注入等。
缺點(diǎn):
基于組件式的框架,所以比較臃腫

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 一直以來(lái),phper討論最多的就是php各種框架的優(yōu)缺點(diǎn),網(wǎng)上的資料也是比較零散,現(xiàn)把幾款主流的框架收集匯總一下,...
    MIN_ZJM閱讀 1,665評(píng)論 1 5
  • 在項(xiàng)目開(kāi)發(fā)中,一些架構(gòu)和代碼都是重復(fù)的,為了避免重復(fù)勞動(dòng),于是各種各樣的框架誕生了。 在PHP開(kāi)發(fā)中,選擇合適的框...
    W3C中文網(wǎng)閱讀 7,790評(píng)論 6 26
  • 在不用緩存、集群之類(lèi)東東只情況下,PHP框架哪家強(qiáng)?我指的是高并發(fā)高負(fù)載,并且適合做大型項(xiàng)目的。 高負(fù)載不是一個(gè)語(yǔ)...
    IM魂影閱讀 2,036評(píng)論 3 2
  • yaf tp ThinkPHP的優(yōu)缺點(diǎn)如下:1、高級(jí)模型:可以輕松支持序列化字段、文本字段、只讀字段、延遲寫(xiě)入、樂(lè)...
    小黑胖_閱讀 1,388評(píng)論 0 1
  • 愿意做自己的人在這個(gè)社會(huì)上總是獨(dú)特的,他們性格直率真實(shí),不掩飾自己的情緒,不隱瞞自己想說(shuō)的話(huà)。他們被看作很酷的人,...
    雜感小札閱讀 939評(píng)論 3 10

友情鏈接更多精彩內(nèi)容