溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

PHP四大主流框架有哪些優(yōu)缺點(diǎn)

發(fā)布時(shí)間:2020-07-22 11:26:34 來(lái)源:億速云 閱讀:166 作者:Leah 欄目:編程語(yǔ)言

PHP四大主流框架有哪些優(yōu)缺點(diǎn)?相信很多沒(méi)有經(jīng)驗(yàn)的人對(duì)此束手無(wú)策,為此本文總結(jié)了問(wèn)題出現(xiàn)的原因和解決方法,通過(guò)這篇文章希望你能解決這個(gè)問(wèn)題。

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):

1.易于上手,有豐富的中文文檔;

2.框架的兼容性較強(qiáng),PHP4和PHP5完全兼容、完全支持UTF8等。

3. 適合用于中小項(xiàng)目的開(kāi)發(fā)

缺點(diǎn):

1.對(duì)Ajax的支持不是很好;

2.目錄結(jié)構(gòu)混亂,需要花時(shí)間整理;

3.上手容易,但是深入學(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功能,能夠制作一定程度的界面外觀(guān);

數(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):
基于組件式的框架,所以比較臃腫

以上就是本章的所有內(nèi)容了,大家感覺(jué)自己的項(xiàng)目使用那個(gè)框架進(jìn)行編寫(xiě)就使用哪吧!其實(shí)還是選自己最熟悉的來(lái)用是最上手的!

看完上述內(nèi)容,你們掌握PHP四大主流框架有哪些優(yōu)缺點(diǎn)的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI