91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

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

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

php主流框架有哪些

發布時間:2021-04-06 12:17:11 來源:億速云 閱讀:162 作者:小新 欄目:編程語言

小編給大家分享一下php主流框架有哪些,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

在php中,我們最常用的框架有七個,分別是Yii2、Laravel、Yaf、Thinkphp、Code Igniter、Zend Framework以及CakePHP,今天我們就來詳細介紹一下他們。

一、ThinkPHP

ThinkPHP(FCS)是一個輕量級的中型框架,是從Java的Struts結構移植過來的中文PHP開發框架。它使用面向對象的開發結構和MVC模式,并且模擬實現了Struts的標簽庫,各方面都比較人性化,熟悉J2EE的開發人員相對比較容易上手,適合php框架初學者。 ThinkPHP的宗旨是簡化開發、提高效率、易于擴展,其在對數據庫的支持方面已經包括MySQL、MSSQL、Sqlite、PgSQL、 Oracle,以及PDO的支持。ThinkPHP有著豐富的文檔和示例,框架的兼容性較強,但是其功能有限,因此更適合用于中小項目的開發。

優點

1、借助成熟的Java思想

2、易于上手,有豐富的中文文檔;學習成本低,社區活躍度高

3、框架的兼容性較強,PHP4和PHP5完全兼容、完全支持UTF8等。

4、適合用于中小項目的開發

5、從thinkphp3.2.2引入composer包管理工具

缺點

1.對Ajax的支持不是很好;

2.目錄結構混亂,相比其他框架目錄結構要差一點;

3.上手容易,但是深入學習較難。

二、Yii

Yii 是一個基于組件的高性能php框架,用于開發大型Web應用。Yii采用嚴格的OOP編寫,并有著完善的庫引用以及全面的教程。從 MVC,DAO/ActiveRecord,widgets,caching,等級式RBAC,Web服務,到主題化,I18N和L10N,Yii提供了 今日Web 2.0應用開發所需要的幾乎一切功能。事實上,Yii是最有效率的PHP框架之一。

優點

1.純OOP

2.用于大規模Web應用

3.模型使用方便

4.開發速度快,運行速度也快。性能優異且功能豐富

5.使用命令行工具。

6.支持composer包管理工具

缺點

1.對Model層的指導和考慮較少

2.文檔實例較少

3.英文太多

4.要求PHP技術精通,OOP編程要熟練!

5.View并不是理想view,理想中的view可能只是html代碼,不會涉及PHP代碼。

三、laravel

優點

1.laravel的設計思想是很先進的,非常適合應用各種開發模式TDD, DDD 和BDD

2.支持composer包管理工具

3.集合了php 比較新的特性,以及各種各樣的設計模式,Ioc 容器,依賴注入等。

缺點

1.基于組件式的框架,所以比較臃腫

四、Code Igniter

優點

1.Code Igniter推崇“簡單就是美”這一原則。沒有花哨的設計模式、沒有華麗的對象結構,一切都是那么簡單。幾行代碼就能開始運行,再加幾 行代碼就可以進行輸出。可謂是“大道至簡”的典范。

2.配置簡單,全部的配置使用PHP腳本來配置,執行效率高;

3.具有基本的路由功能,能夠進行一定程度的路由;

4.具有初步的Layout功能,能夠制作一定程度的界面外觀;

5.數據庫層封裝的不錯,具有基本的MVC功能.

6.快速簡潔,代碼不多,執行性能高,

7.框架簡單,容易上手,學習成本低,文檔詳細;

8.自帶了很多簡單好用的library,框架適合小型應用.

缺點

1.本身的實現不太理想。

2.內部結構過于混亂,雖然簡單易用,但缺乏擴展能力。

3.把Model層簡單的理解為數據庫操作.

4.框架略顯簡單,只能夠滿足小型應用,略微不太能夠滿足中型應用需要.

評價

總體來說,拿CodeIgniter來完成簡單快速的應用還是值得,同時能夠構造一定程度的layout,便于模板的復用,數據操作層來說封裝的不 錯,并且CodeIgniter沒有使用很多太復雜的設計模式,執行性能和代碼可讀性上都不錯。至于附加的library 也還不錯,簡潔高效。

五、Zend Framework

優點

1.大量應用了PHP5中面向對象的新特征:接口、異常、抽象類、SPL等等。這些東西的應用讓Zend Framework具有高度的模塊化和靈活性

2.嚴格遵循“針對接口編程”和“單一對象職責”等原則

3.官方出品,自帶了非常多的library,框架本身使用了很多設計模式來編寫,架構上很優雅,執行效率中等

4.MVC設計,比較簡潔

5.具有路由功能,配置文件比較強大(能夠處理XML和php INI)

6.能夠直觀的支持除數據庫操作之外的Model層(比 CodeIgniter 和 CakePHP 強),并且能夠很輕易的使用Loader功能加載其他新增加的Class

7.Cache功能很強大,從前端Cache到后端Cache都支持,后端Cache支持Memcache、APC、SQLite、文件等等方式

8.數據庫操作功能很強大,支持各種驅動(適配器)

9.文檔很全,在國內社區很成熟

缺點

1.MVC功能完成比較弱,View層簡單實現(跟沒實現一樣),無法很強大的控制前端頁面.

2.沒有自動化腳本,創建一個應用,包括入口文件,全部必須自己手工構建,入門成本高

3.對于簡單和小型的項目來說,反而因為在框架中應用了大量面向對象設計,對開發者提出了更高的要求,間接增加了項目的開發成本

評價

作為官方出品的框架,Zend Framework的野心是可以預見的,想把其他框架擠走,同時封裝很多強大的類庫,能夠提供一站式的框架服務,并且他們的開發團隊很強大,完全足夠有能力開發很強大的產品出來,所以基本可以確定的是Zend Framework前途無量,如果花費更多的時間去完善框架。同樣的,Zend Framework架構本身也是比較優雅的,說明Zend官方是有很多高手的,設計理念上比較先進,雖然有一些功能實現的不夠完善,比如View層,自動化腳本等等,這些都有賴于未來的升級

六、CakePHP

優點

1.最類似于RoR的框架,包括設計方式,數據庫操作的Active Record方式

2.設計層面很優雅,沒有自帶多余的 library,所有的功能都是純粹的框架,執行效率還不錯

3.數據庫層的 hasOne, hasMany功能很強大,對于復雜業務處理比較合適

4.路由功能,配置功能難度適中

5.自動構建腳手架(scaffold)很強大,適合中型應用

6.基本實現過了MVC每一層

7.具有自動操作命令行腳本功能

8.文檔比較全,學習成本中等

缺點

1.CakePHP非常嚴重的問題是把Model理解為數據庫層操作,嚴重影響了除了數據庫之外的操作能力

2.cache功能略顯薄弱

3.配置功能稍嫌弱

4.不適合大型應用,只適合中型應用,小型應用來說略微的學習成本高了點.

評價

總體來說CakePHP框架代表了PHP框架很重要的一個時代和代表,并且目前發揮著很重要的作用,不少自己寫的框架都模仿了CakePHP的方式,是個里程碑式的產品;CakePHP透露著RoR的敏捷開發方式和把數據庫操作認為是唯一Model的設計思想,作為開發快速應用和原型是絕好的工具;同樣,用來做Web2.0網站的開發框架,也是值得選擇的

七、Symfony

優點

1.完整實現了MVC三層

2.封裝了所有東西,包括 $POST,$GET 數據,異常處理,調試功能,數據檢測

3.包含強大的緩存功能

4.自動加載Class,能夠很隨意的定義各種自己的class

5.強大的語言支持

6.具有很強大的view層操作,能夠零碎的包含單個多個文件

7.非常強大的配置功能,使用xml配置能夠控制所有框架和程序運行行為

8.包含強大的多層級項目和應用管理:Project --> Application --> Module --> Action,能夠滿足一個項目下多個應用的需要,并且每層可以定義自己的類庫,配置文件,layout

9.非常強大的命令行操作功能,包括建立項目、建立應用、建立模塊、刷新緩存等等

10.Symfony絕對是開發大型復雜項目的首選,因為使用了Symfony,將大大節約開發成本,并且多人協作的時候,不會出現問題,在Project級別定義好基礎Class以后,任何模塊都能夠重用,大大復用代碼.

缺點

1.最大的問題也在于使用了太多風格迥異的開源項目來組合成框架

2.由于Mojavi和Propel本身都相當復雜,因此Symfony的結構非常復雜,難以理解和學習

3. 緩存功能無法控制,每次開發調試總是緩存,需要執行 symfony cc,symfony rc來清除和重建緩存

4.效率不是很高,特別是解析模板和讀取配置文件的過程,花費時間不少

5.學習成本很高,并且國內沒有成熟的社區和中文文檔

評價

Symfony絕對是企業級的框架,唯一能夠貌似能夠跟Java領域哪些強悍框架抗衡的東西;強悍的東西,自然學習復雜,但是相應的對項目開發也比較有幫助,自然是推薦復雜的項目使用Symfony來處理,覺得是值得,后期的維護成本比較低,復用性很強。相應的如果使用Symfony的應該都是比較復雜的互聯網項目,那么相應的就要考慮關于數據庫分布的問題,那么就需要拋棄Symfony自帶的數據庫操作層,需要自己定義,當然了,Symfony支持隨意的構造model層

以上是“php主流框架有哪些”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

php
AI

无棣县| 静乐县| 铁力市| 得荣县| 铜川市| 新泰市| 汤阴县| 阳谷县| 龙岩市| 京山县| 新平| 苏尼特左旗| 策勒县| 延长县| 公主岭市| 庆城县| 吴江市| 晋宁县| 灵丘县| 平凉市| 吉林市| 封开县| 洛隆县| 靖安县| 樟树市| 西峡县| 兴宁市| 罗山县| 安义县| 亳州市| 天台县| 侯马市| 科尔| 聂荣县| 仙游县| 宁远县| 彭山县| 寿光市| 绍兴市| 大城县| 彭水|