-
當(dāng)前位置:首頁 > 創(chuàng)意學(xué)院 > 十大排名 > 專題列表 > 正文
php框架十大排名(php性能最好的框架)
大家好!今天讓創(chuàng)意嶺的小編來大家介紹下關(guān)于php框架十大排名的問題,以下是小編對此問題的歸納整理,讓我們一起來看看吧。
創(chuàng)意嶺作為行業(yè)內(nèi)優(yōu)秀的企業(yè),服務(wù)客戶遍布全球各地,相關(guān)業(yè)務(wù)請撥打電話:175-8598-2043,或添加微信:1454722008
本文目錄:
一、目前php開發(fā)網(wǎng)站,最為流行的框架是哪幾個(gè)?
Openbiz Cubi PHP開發(fā)框架
這顯然是一個(gè)高耦合性的框架的代表,有點(diǎn)讓開發(fā)人員“拎包入住”快捷酒店一樣的的感覺。Openbiz Cubi 是一個(gè)應(yīng)用平臺式的開發(fā)框架。雖然與眾多更加耳熟能詳?shù)目蚣芟啾?Openbiz Cubi 仍然是一匹黑馬,但是還是一個(gè)十分值得推薦的框架。它自身基于Zend Framework構(gòu)建,但是擁有自己獨(dú)特的基于元數(shù)據(jù)的 MVC 和 ORM 邏輯,并采用Smarty和PHP模板 作為主要UI的模板引擎,所以如果你是Zend框架的玩家,別擔(dān)心,Openbiz Cubi的代碼也會同樣讓你很容易上手。
它不同于其他傳統(tǒng)意義上的PHP框架,它具有一個(gè)類似JAVA的元數(shù)據(jù)引擎, 可以通過XML的方式來“描述”大多數(shù)對象,甚至通過XML的描述就可以實(shí)現(xiàn)數(shù)據(jù)的CRUD(增刪讀改)這些操作。如果你的業(yè)務(wù)需求僅僅是要實(shí)現(xiàn)一些簡單 的數(shù)據(jù)CRUD操作,你甚至不需要去寫什么PHP代碼,XML就可以全部搞定。而你的PHP功夫可以通過他的Plugin-Service方式用于集中在 實(shí)現(xiàn)某些特殊的業(yè)務(wù)邏輯上。
Openbiz Cubi目 前還有一個(gè)叫做 Openbiz Appbuilder 的超級好用的代碼生成工具,對于還不熟Openbiz的XML元數(shù)據(jù)的開發(fā)人員來說,Appbuilder 絕對是一個(gè)可以幫助你快速上手的利器,他通過圖形界面的生成向?qū)韼湍阕詣觿?chuàng)建數(shù)據(jù)對象、表單對象、嵌入式服務(wù),甚至整個(gè)應(yīng)用程序的雛形。 按Openbiz的官方介紹來說,你只需要思考清楚你的應(yīng)用程序的業(yè)務(wù)邏輯,剩下的代碼工作就交給Openbiz Appbuilder來幫你搞定吧。
CakePHP 開發(fā)框架
如果你仍然需要編寫面向PHP4兼容的代碼,CakePHP 將是一個(gè)非常不錯(cuò)的選擇, 在PHP 4 & 5的MVC式框架列表里面,CakePHP都曾經(jīng)是最流行的。它還提供了很多種途徑的技術(shù)支持(討論組、留言板、IRC等)還有優(yōu)秀的教程。 CackePHP是個(gè)很容易上手的框架,但是你并不容易在短短幾周的時(shí)間就完全掌握它。
Zend Framework框架
Zend Framework 是面對一些較有經(jīng)驗(yàn)的開發(fā)者和從底層構(gòu)建一些企業(yè)級應(yīng)用程序而設(shè)計(jì)的。(例如:宣稱面向企業(yè)應(yīng)用而設(shè)計(jì)的 Openbiz Cubi 就是基于Zend Framework框架之上而構(gòu)建的。)該框架是高度模塊化的。這意味著你可以按你的實(shí)際需要來引用Zend的代碼。有些函數(shù)庫甚至可以很容的被提取出來 單獨(dú)使用(例如Zend_Gdata,這也是個(gè)低耦合性的特點(diǎn))使用Zend框架,你不必非要遵從它的MVC架構(gòu),(雖然你最好能這么做),并且它還提供 了許多內(nèi)建的高級功能用于完成與現(xiàn)有的web服務(wù)整合,多語言化和實(shí)現(xiàn)單元測試這些任務(wù)。
CodeIgniter
CodeIgniter 是一個(gè)PHP5.2+ 的MVC框架,它體積小巧切具有豐富的文檔資源。通常被稱為“初學(xué)者框架”,因?yàn)樗鄬θ菀自囉煤洼^短的學(xué)習(xí)曲線,此外CodeIgniter也是十分靈 活和強(qiáng)大的。該框架擁有一個(gè)非常龐大的社區(qū)支持。并且在社區(qū)里面很容易找到大量的CI函數(shù)庫,你可以大膽的夢想, 也許你正需要做的事情在社區(qū)的某個(gè)交流,某個(gè)人已經(jīng)把它實(shí)現(xiàn)了。
Symfony
Symfony 是最古老的PHP框架之一(相信你從他的網(wǎng)站風(fēng)格上也發(fā)現(xiàn)這一點(diǎn)了),他同樣也是轉(zhuǎn)為企業(yè)級Web應(yīng)用程序而設(shè)計(jì)的。然而,對于他所能提供的所有動力和性 能而言,它只擁有很小的體積并且非常容易配置在大多數(shù)php的主機(jī)環(huán)境中。由于他的年頭最長久,你會很容易找到許多關(guān)于Symfony的教程、書記等資 料,對于新手來說,這絕對是件好事兒。
Symfony使用命令行代碼生成工具來為項(xiàng)目快速生成所需的代碼,這種方式也許對于某些開發(fā)人員來說是前所未聞的(在那個(gè)年頭,也許 吧。。。)然后,他可以幫助你在很短的時(shí)間里完成代碼并是他們可以運(yùn)行。Symfony的網(wǎng)站上手機(jī)了大量的教程和范例代碼,來幫助你熟悉掌握他們。
Yii Framework
Yii 是一個(gè)高度模塊化,高性能的PHP5框架,專門為了Web應(yīng)用程序而開發(fā)。Yii采用了大量的命令行生成工具,讓你可以快速的生成一些代碼,因此,他最適 合于喜歡在命令行的黑窗口上敲敲打打的人。所有這些代碼生成工具意味著你需要記住更多的命令和參數(shù),但是一點(diǎn)你做到了,你會發(fā)現(xiàn),它們將大大減少你所要花 費(fèi)的時(shí)間來設(shè)置和配置你的應(yīng)用程序。
這種開發(fā)方式 非常類似于Openbiz Appbuilder所提供的向?qū)降拇a生成方式,最大的不同點(diǎn)是Yii是基于命令行去生成代碼,Openbiz Appbuilder是在圖形界面上生成代碼。
ThinkPHP
ThinkPHP是一個(gè)免費(fèi)開源的,快速、簡單的面向?qū)ο蟮妮p量級PHP 開發(fā)框架,遵循 Apache2 開源協(xié)議發(fā)布,是為了簡化企業(yè)級應(yīng)用開發(fā)和敏捷WEB應(yīng)用開發(fā)而誕生的。借鑒了國外很多優(yōu)秀的框架和模式,使用面向?qū)ο蟮拈_發(fā)結(jié)構(gòu)和 MVC 模式,融合了 Struts 的 Action 思想和 JSP 的 TagLib(標(biāo)簽庫)、 RoR 的ORM映射和 ActiveRecord 模式, 封裝了 CURD 和一些常用操作, 單一入口模式等,在模版引擎、緩存機(jī)制、認(rèn)證機(jī)制和擴(kuò)展性方面均有獨(dú)特的表現(xiàn)。
Yii Framework
Yii是一個(gè)基于組件的高性能PHP框架,用于開發(fā)大型Web應(yīng)用。Yii采用嚴(yán)格的OOP編寫,并有著完善的庫引用以及全面的教程。從 MVC,DAO/ActiveRecord,widgets,caching,等級式RBAC,Web服務(wù),到主題化,I18N和L10N,Yii提供了今日Web 2.0應(yīng)用開發(fā)所需要的幾乎一切功能。事實(shí)上,Yii是最有效率的PHP框架之一。
Yii是一個(gè)高性能的PHP5的web應(yīng)用程序開發(fā)框架。通過一個(gè)簡單的命令行工具 yiic 可以快速創(chuàng)建一個(gè)web應(yīng)用程序的代碼框架,開發(fā)者可以在生成的代碼框架基礎(chǔ)上添加業(yè)務(wù)邏輯,以快速完成應(yīng)用程序的開發(fā)
phalcon
Phalcon是一套實(shí)現(xiàn)MVC架構(gòu)的高性能PHP應(yīng)用程序框架。初始版本發(fā)布于2012年11月,開放源代碼并基于BSD授權(quán)條款。與其他大部分的PHP框架不同,Phalcon是以擴(kuò)充的方式以C語言所編寫,因此Phalcon的執(zhí)行速度高過其他PHP框架,并且消耗更少的資源,根據(jù)官方的測試,Phalcon是目前世界上速度最快的PHP框架之一。[1]
二、國外主流PHP框架對比評測
最近簡單的使用了目前在國內(nèi)用的比較多的幾個(gè)主流國外PHP框架(不包括國內(nèi)框架) 大致對這些框架有個(gè)直觀上的感受 簡單分享一下 對于哪些做框架選型的時(shí)候 權(quán)當(dāng)一個(gè)參考
主要參考的框架包括 CodeIgniter CakePHP ZendFramework Symfony 我對很多框架也沒有認(rèn)真使用 只是簡單試用了一下 可能很多看法不成熟或者是錯(cuò)誤的 請大家指正 一起成長
CodeIgniter
優(yōu)點(diǎn)
配置簡單 全部的配置使用PHP腳本來配置 執(zhí)行效率高 具有基本的路由功能 能夠進(jìn)行一定程度的路由 具有初步的Layout功能 能夠制作一定程度的界面外觀 數(shù)據(jù)庫層封裝的不錯(cuò) 具有基本的MVC功能
快速簡潔 代碼不多 執(zhí)行性能高 框架簡單 容易上手 學(xué)習(xí)成本低 文檔詳細(xì) 自帶了很多簡單好用的library 框架適合小型應(yīng)用
缺點(diǎn)
把Model層簡單的理解為數(shù)據(jù)庫操作
框架略顯簡單 只能夠滿足小型應(yīng)用 略微不太能夠滿足中型應(yīng)用需要
評價(jià)
總體來說 拿CodeIgniter來完成簡單快速的應(yīng)用還是值得 同時(shí)能夠構(gòu)造一定程度的layout 便于模板的復(fù)用 數(shù)據(jù)操作層來說封裝的不錯(cuò) 并且CodeIgniter沒有使用很多太復(fù)雜的設(shè)計(jì)模式 執(zhí)行性能和代碼可讀性上都不錯(cuò) 至于附加的 library 也還不錯(cuò) 簡潔高效
CakePHP
優(yōu)點(diǎn)
CakePHP是最類似于RoR的框架 包括設(shè)計(jì)方式 數(shù)據(jù)庫操作的Active Record方式 設(shè)計(jì)層面很優(yōu)雅 沒有自帶多余的 library 所有的功能都是純粹的框架 執(zhí)行效率還不錯(cuò) 數(shù)據(jù)庫層的 hasOne hasMany 功能很強(qiáng)大 對于復(fù)雜業(yè)務(wù)處理比較合適 路由功能 配置功能還不錯(cuò) 自動構(gòu)建腳手架(scaffold)很強(qiáng)大 適合中型應(yīng)用 基本實(shí)現(xiàn)過了MVC每一層 具有自動操作命令行腳本功能
文檔比較全 在國內(nèi)推廣的比較成功 大部分都知道CakePHP 學(xué)習(xí)成本中等
缺點(diǎn)
CakePHP非常嚴(yán)重的問題是把Model理解為數(shù)據(jù)庫層操作 嚴(yán)重影響了除了數(shù)據(jù)庫之外的操作能力
CakePHP的cache功能略顯薄弱 配置功能稍嫌弱 CakePHP不適合大型應(yīng)用 只適合中型應(yīng)用 小型應(yīng)用來說略微的學(xué)習(xí)成本高了點(diǎn)
評價(jià)
總體來說CakePHP框架代表了PHP框架很重要的一個(gè)時(shí)代和代表 并且目前發(fā)揮著很重要的作用 不少自己寫的框架都模仿了CakePHP的方式 是個(gè)里程碑式的產(chǎn)品 CakePHP透露著RoR的敏捷開發(fā)方式和把數(shù)據(jù)庫操作認(rèn)為是唯一Model的設(shè)計(jì)思想 作為開發(fā)快速應(yīng)用和原型是絕好的工具 同樣 用來做Web 網(wǎng)站的開發(fā)框架 也是值得選擇的
Zend Framework
優(yōu)點(diǎn)
官方出品 自帶了非常多的 library 框架本身使用了很多設(shè)計(jì)模式來編寫 架構(gòu)上很優(yōu)雅 執(zhí)行效率中等 MVC設(shè)計(jì)中 比較簡潔 具有路由功能 配置文件比較強(qiáng)大(能夠處理XML和php INI) 各種 library 很強(qiáng)大 是所有PHP框架中各種功能最全面的 包括它不僅是一個(gè)框架 更是一個(gè)大類庫(取代PEAR) 這是它的主要特色 能夠直觀的支持除數(shù)據(jù)庫操作之外的Model層(比 CodeIgniter 和 CakePHP 強(qiáng)) 并且能夠很輕易的使用Loader功能加載其他新增加的Class Cache功能很強(qiáng)大 從前端Cache到后端Cache都支持 后端Cache支持Memcache APC SQLite 文件等等方式 數(shù)據(jù)庫操作功能很強(qiáng)大 支持各種驅(qū)動(適配器)
文檔很全 在國內(nèi)社區(qū)很成熟 并且目前不少Web 網(wǎng)站在使用 學(xué)習(xí)成本中等
缺點(diǎn)
MVC功能完成比較弱 View層簡單實(shí)現(xiàn)(跟沒實(shí)現(xiàn)一樣) 無法很強(qiáng)大的控制前端頁面
沒有自動化腳本 創(chuàng)建一個(gè)應(yīng)用 包括入口文件 全部必須自己手工構(gòu)建 入門成本高
Zend Framework 作為一個(gè)中型應(yīng)用框架問題不大 也能夠勉強(qiáng)作為大型應(yīng)用的框架 但是作為一個(gè)很成熟的大型PHP框架來說 還需要一些努力
評價(jià)
作為官方出品的框架 Zend Framework的野心是可以預(yù)見的 想把其他框架擠走 同時(shí)封裝很多強(qiáng)大的類庫 能夠提供一站式的框架服務(wù) 并且他們的開發(fā)團(tuán)隊(duì)很強(qiáng)大 完全足夠有能力開發(fā)很強(qiáng)大的產(chǎn)品出來 所以基本可以確定的是Zend Framework前途無量 如果花費(fèi)更多的時(shí)間去完善框架 同樣的 Zend Framework架構(gòu)本身也是比較優(yōu)雅的 說明Zend官方是有很多高手的 設(shè)計(jì)理念上比較先進(jìn) 雖然有一些功能實(shí)現(xiàn)的不夠完善 比如View層 自動化腳本等等 這些都有賴于未來的升級 總體來說Zend Framework是最值得期待的框架 當(dāng)然 你目前要投入你的項(xiàng)目中使用也是完全沒問題的
Symfony
優(yōu)點(diǎn)
Symfony 是我了解的PHP框架中功能最強(qiáng)大的 而且我使用時(shí)間比較長 但是很多功能還是沒有挖掘出來 它完整實(shí)現(xiàn)了MVC三層 封裝了所有東西 包括 $_POST $_GET 數(shù)據(jù) 異常處理 調(diào)試功能 數(shù)據(jù)檢測 包含強(qiáng)大的緩存功能 自動加載Class(這個(gè)功能很爽) 強(qiáng)大的i n國家化支持 具有很強(qiáng)大的view層操作 能夠零碎的包含單個(gè)多個(gè)文件 非常強(qiáng)大的配置功能 使用yml配置能夠控制所有框架和程序運(yùn)行行為 強(qiáng)大到讓人無語 能夠很隨意的定義各種自己的class 并且symfony能夠自動加載(auto load)這些class 能夠在程序中隨意調(diào)用 包含強(qiáng)大的多層級項(xiàng)目和應(yīng)用管理 Project > Application > Module > Action 能夠滿足一個(gè)項(xiàng)目下多個(gè)應(yīng)用的需要 并且每層可以定義自己的類庫 配置文件 layout 非常強(qiáng)大的命令行操作功能 包括建立項(xiàng)目 建立應(yīng)用 建立模塊 刷新緩存等等
Symfony絕對是開發(fā)大型復(fù)雜項(xiàng)目的首選 因?yàn)槭褂昧薙ymfony 將大大節(jié)約開發(fā)成本 并且多人協(xié)作的時(shí)候 不會出現(xiàn)問題 在Project級別定義好基礎(chǔ)Class以后 任何模塊都能夠重用 大大復(fù)用代碼
缺點(diǎn)
數(shù)據(jù)庫操作model采用了重量級的propel和creole 不過在我測試的版本中已經(jīng)把他們移到了addon里 可用可不用
緩存功能無法控制 每次開發(fā)調(diào)試總是緩存 需要執(zhí)行 symfony cc symfony rc 來清除和重建緩存
效率不是很高 特別是解析模板和讀取配置文件的過程 花費(fèi)時(shí)間不少
學(xué)習(xí)成本很高 并且國內(nèi)沒有成熟的社區(qū)和文檔 連中文手冊都沒有 相應(yīng)的要掌握所有功能 需要花費(fèi)比較多的時(shí)間
評價(jià)
Symfony絕對是企業(yè)級的框架 唯一能夠貌似能夠跟Java領(lǐng)域哪些強(qiáng)悍框架抗衡的東西 強(qiáng)悍的東西 自然學(xué)習(xí)復(fù)雜 但是相應(yīng)的對項(xiàng)目開發(fā)也比較有幫助 自然是推薦復(fù)雜的項(xiàng)目使用Symfony來處理 覺得是值得 后期的維護(hù)成本比較低 復(fù)用性很強(qiáng) 相應(yīng)的如果使用Symfony的應(yīng)該都是比較復(fù)雜的互聯(lián)網(wǎng)項(xiàng)目 那么相應(yīng)的就要考慮關(guān)于數(shù)據(jù)庫分布的問題 那么就需要拋棄Symfony自帶的數(shù)據(jù)庫操作層 需要自己定義 當(dāng)然了 Symfony支持隨意的構(gòu)造model層
總結(jié)
以上數(shù)款框架 各有特色 而且都是開源項(xiàng)目 不過框架針對的項(xiàng)目不一樣 一般來說 CodeIngiter 比較適合小型項(xiàng)目 CakePHP 和 Zend Framework 比較適合中型項(xiàng)目 Symfony 比較適合大型重量級項(xiàng)目 在項(xiàng)目選型的時(shí)候 要充分考慮框架的可以定制性 擴(kuò)展性 因?yàn)槊總€(gè)項(xiàng)目都無法確定你是否會隨著需求的變化進(jìn)行改變
相對來說 Zend Framework 和 Symfony 應(yīng)對變化的能力比較強(qiáng) 特別是能夠隨意定制 model 層的Class 能夠非常方便增加自己業(yè)務(wù)或者數(shù)據(jù)處理類 我是個(gè)人比較推薦在中大型項(xiàng)目中使用的框架
CodeIngiter 和 CakePHP 在中小型項(xiàng)目中同樣能夠發(fā)揮重大作用 快速開發(fā)和原型構(gòu)建 非常適合目標(biāo)不清晰的原型項(xiàng)目的開發(fā)
當(dāng)然了 也許 自己寫一個(gè)框架更適合
lishixinzhi/Article/program/PHP/201311/21441
三、php框架排行
學(xué)習(xí) zend framework 吧, smarty 不是框架,是模版引擎
四、你們覺得哪個(gè)Php框架比較好
Github 上 PHP 開源項(xiàng)目的排名 Search · stars:>0 · GitHub , 好有個(gè)概念.
以上就是關(guān)于php框架十大排名相關(guān)問題的回答。希望能幫到你,如有更多相關(guān)問題,您也可以聯(lián)系我們的客服進(jìn)行咨詢,客服也會為您講解更多精彩的知識和內(nèi)容。
推薦閱讀:
phpstudy怎么運(yùn)行php源碼(phpstudy如何運(yùn)行)
iphone連拍快照怎么只有一張(iphone連拍快照怎么只有一張了)
關(guān)于杭州的美食(關(guān)于杭州的美食作文)