最好的PHP框架有哪些

最好的PHP框架有哪些

首推 Laravel ,其次是 Yii,Laravel 的設計思想以及在工程實踐上的支持,超過 ThinkPHP 好幾個世代。若是說原生的 PHP 是火槍, ThinkPHP 就是來福槍,Lavavel 則是衝鋒槍。你要打獵的話,帶把來福槍徹底足夠了,可是要上戰場,非得更自動化的衝鋒槍不行。

好處有不少啊:php

  • Composer 作包管理
  • 標準的 Autoload 實現,可讓 `include xxx.php` 成爲歷史
  • 各類依賴注入
  • ORM 支持
  • 好用的命令行和腳手架
  • 豐富的文檔和活躍的社區

即便有這麼多好處,也不過是追趕了幾年前 ROR 的水平,還在用 ThinkPHP 的人,不過是懶得接觸新知識罷了。

說ThinkPHP適合國人使用的人,自黑的時候不要帶上別人,多謝。html

 


在PHP5.3以後, PHP-FIGComposer給PHP社區帶來了巨大的變化,若是一個框架還沒用到Composer,仍是invent everything here,就真的有點落伍了。
有了Composer的支持,像攢電腦同樣實現一個本身的框架也不是多困難的事兒了,可是要作出一個「好」框架仍是挺困難的一件事。項目用過的框架6個(ZF1,SF2,CI,Yii,Laravel4,Silex),瞭解過的就不數了,見過的框架中最優秀的當屬 Laravel4,解釋以下:
  1. 直接。各類經常使用的功能都由一些簡單的Service實現,經過Facade訪問,不少常見的問題都簡單優雅的處理了,接口設計很貼心,大部分使用場景都替你考慮到了。因爲功能簡單直接,文檔也就無需贅言,官網上的文檔也不是太多,看一遍徹底能夠開始幹活兒。
  2. 開放。有了Composer,優秀的代碼能夠很方便的引入項目,Laravel的框架就用到了boris,whoops,monolog,swiftmailer和symfony下面的一批基礎類庫,而不是非得本身寫的代碼才放心。
  3. 簡單。不僅是使用上的簡單,框架自己的實現也不像別的「企業級」框架那麼沉重,各個功能見不多的耦合,經過依賴注入容器組裝起來。要從源代碼裏挖掘框架內部的實現也沒有那麼多抽象層級。

另外,PHP新手仍是從PHP The Right Way開始學吧,對新時代的PHP有個正確的認識,CI適合的是還在用<PHP5.2的老人,不是新手

 


這裏列幾個客觀數據(截止至 2017 年 1 月 2 日):java

 

1、Github 上 PHP 項目排行第一react

Laravel 做爲這一頁裏最晚出現的框架,Star 數量遠遠高於排名第二的框架。連接在此 Build software better, together laravel

 

2、Google 趨勢排第一 git

Laravel 跟其餘框架的對比圖,連接在這裏 https://www.google.com/trends/explore?date=2006-08-16 2016-09-16 程序員

 

 

3、用戶投票排名第一github

編程網站 Sitepoint 上的用戶調查第一名,連接: The Best PHP Framework for 2015: SitePoint Survey Results web

 

 

 

Laravel 在國內的生態圈發展也日趨成熟,你能夠很輕鬆的在網上找到不少 Laravel 相關的中文學習資料、技術討論社區等。下面是推薦的幾個網站:thinkphp

 

------------------- 更新於: 2016. 12. 11 ------------------

 

Laravel 第一部中文新手書籍《Laravel 入門教程》發佈

 

Laravel 大 Logo 衛衣來了

 

Laravel 5.3 中文文檔翻譯完成

 

線下聚會正在進行中 :

 

Laravel Dinner 第一期 (北京站) 和第二期 (深圳站) 完美收官啦!

[Laravel Dinner 03 期][上海] 線下聚會開始報名啦

 

------------------- 更新於: 2016. 08. 18 ------------------

 

Lumen 5.1 中文文檔翻譯完成「精校版」_PHPHub

 

Laravel 5.1 LTS 速查表重磅發佈_PHPHub

 

PHP 標準規範中文版發佈_PHPHub

 

 

------------------- 更新於: 2014 . 09. 02 ------------------

 

Laravel China is ready Laravel 中文文檔 , 歡迎發起 issue 提交紕漏 和建議 --> Laravel China · GitHub

 

------------------- 更新於: 2014 . 08. 17 ------------------

 

PHPhub - PHP &amp;amp; Laravel的中文社區 一個乾淨的 PHP 中文社區一直是個人夢想, 這幾天動手寫了一個, 今天算是正式上線, 雖然還有好多功能須要優化, 歡迎你們加入, 給我點動力, 哈哈.

 

使用 Laravel4 編寫的, 代碼也是開源的 summerblue/phphub · GitHub

 

------------------- 更新於: 2014 . 03. 06 ------------------

一個比較有說服力的數據:

 

Laravel 是 Github 上最有名的 PHP 項目, 8627 個 star, 領先第二名的 Symfony 和 第三名的 CI 接近 1000個 star, 見這裏 --> Most Star PHP Project On GitHub

 

ci 和 symfony 得話多少年才能達到今天的影響力, 而 Laravel 的第一個 commit 發生於 Jun 09, 2011 , 見下圖:

 

 

 

 

---------------- 首次發佈 ---------------------

 

Laravel4 , 整個 PHP 社區都爲之瘋狂的框架.

 

Laravel4 講究的是最佳實踐, 是一個積極向上的框架, 向 牛B 的 Rails 看齊, 借鑑了不少在成熟框架已經體現出來很成功的元素:

  1. RESTful Routing ;
  2. 設計精妙的 Blade 模板引擎, 輕快, 不失靈活 ;
  3. 合理的 ORM model 層, Eloquent ORM , 借鑑於 Rails 的成功;
  4. migration 數據庫版本系統 和 seeding ;
  5. 使用包管理器 Composer , 打開了一扇開往春天的門;
  6. 強調測試驅動, 整個核心經受過完整的測試, 高質量的代碼;
  7. 命令行驅動, 能夠作到高度自動化 (講究效率, 代碼生成器...) , 借鑑與 rails ;
  8. 合理使用 PHP 的新版本特性, 讓寫代碼更加有樂趣, 跟上時代的步伐;
  9. 積極向上的社區, 這個很重要呀, 你們都在學習着, 創造着好的工具, 加快開發速度, 提升編程效率, 接受新知識的速度也很快.
  10. 對 php 標準化的支持 PHP-FIG — PHP Framework Interop Group

 

另: 如下幾個連接供參考

 

Best PHP Frameworks for 2014

Why Laravel is Taking the PHP Community by Storm

The future of web development is Laravel

 

2014 我有個願望, 但願 PHP 社區人心渙散的局面成爲過去, Laravel, Composer, PHP-Fig 纔是將來, 快速開發, 遵照規範, DRY, 構建一個團結的社區, 聰明, 理智的社區.

 

沒有一個比如今更合適的時間了, 朋友們, 把我頂起來吧, 讓 PHP 的新人和老鳥都知道在 PHP 社區裏面, 有這麼一個好東西的存在, 也算爲 PHP 社區作貢獻. May God be with You.

------------------------------------- END -------------------------------------

 

 

和你們同樣,論強大推薦Yii。
  • yii框架是首選,文檔齊全,面向對象很完全,性能超羣。實例化模型之後不少組件都能用上,惟一不喜歡的是查詢出來的數據操做都是對象式的,我仍是比較喜歡數組方式,只好用chtml::listData()轉化。另zii wigdet對於提升開發速度很是牛逼。
  • 其實thinkphp 3真的很不錯,並且容易上手文檔更全更適合國人。我我的比較喜歡thinkphp的db部分route rest部分。
  • zend framework 更加像一個超大超全的類庫,雖然運行速度有點慢,不少框架都留有zend類的接口,其價值可見一斑
  • codeigniter沒仔細看,不敢妄言,中文支持比較少,不少人用的是他的分支版,kohana,有興趣的話能夠看下。
  • 最後說一下speedphp,這個框架的設計思想我很喜歡,簡單高效,有sae版,擴展方便,適合改造,速度也不錯,我開發社交遊戲就喜歡用這個框架改造。
說了這麼多,框架仍是要適合你的業務纔是最好的。


 
ZF1,2 , Symfony用了挺長時間,如今喜歡上了Laravel ,推薦給你們,文檔齊全,新手也很好上手。
 
 

好的定義是什麼?
設計模式好?
代碼規範?
文檔詳細?
註釋明瞭?

不知何時起,知乎上好像有一股黑thinkphp風氣,就像java程序員鄙視php程序員php程序員鄙視asp程序員asp程序員鄙視易語言程序員易語言程序員鄙視authorwave同樣

不說thinkphp其餘方面怎麼樣,人家的的確確是一個沉澱了八年的做品,從頭至尾沒有收過你一分錢完善的開發文檔本土化作的很不錯。(這算黑點嗎?)社區運營確實存在問題(廣告,hr氾濫,提個問題沒人解答),可是他的確是一個讓廣達中國php程序員能過快速認識mvc,框架,CBD(thinkphp3.2以後的確作到了cbd,徹底能夠對框架底層定製化開發),包括orm等等,雖然他在某些方面的確算不上一個頂尖優秀的框架,可是從學習入門型框架的角度來看,他的確能夠算得上是一個簡單,輕量,適合一個徹底沒有接觸過mvc框架的小白門用來入門和學習的框架了。

何況像騰訊右側欄裏面大多數推廣網站,極客學院的後臺以及不少中小型創業公司都在用他。包括國內最廣的weiphp框架也是基於tp3.2開發的,穩定性和普遍性可見一斑。

最後說一點,整個IT行業如今都很急功近利,追求的是敏捷開發,短時間效益,thinkphp只不過剛好迎合了這種形式。要背鍋的應該是整個大環境(體制說:怪我咯¯\_(ツ)_/¯)不要老是無腦怪罪到thinkphp自己或者用thinkphp的人身上,更不要站在技術制高點謾罵thinkphp的做者,這樣只會體現用其餘高端有逼格框架的人的素質下限。
 
 

上面不少朋友也說了。
沒有最好的,只有更適合本身的。

並非全部項目都適合用框架的,我我的的觀點是,團隊項目是必定要用框架的。這樣可使整個項目保持統一的接口、編碼風格,爲之後的後續維護下降成本

關因而否要用框架的文章,昨天剛看到一篇好文章,這裏一塊兒分享:
《好代碼不值錢》

我不是很贊同本身寫框架的說法,緣由有二:
1.時間成本:一個框架要涵蓋的內容是比較普遍的,一個成熟穩定的框架也不是幾個工做日就能夠完成的。咱們應該站在巨人的肩膀上,而不是總想着去本身造輪子。
2.學習成本:團隊中本身開發的框架,通常是由1~2個核心人員來完成的。其中可能包含了比較多的我的風格,文檔也可能不會很健全。使用這樣的框架開發過程當中若是團隊中有人員調整,將是一件很痛苦的事。

在選擇適合本身的框架的時候,也有兩點小建議:
1.文檔豐富,之因此把這個作爲首要建議也是考慮到團隊合做的狀況下,新人能夠快速上手
2.有在維護更新,不要去用那些已通過時的框架。一個框架若是好久沒有更新,起碼能夠說明用的人很少,基本能夠忽略。另外,若是能用社區或者商業公司在維護的框架,最好不要用我的維護的框架,也是考慮到風險成本。

 
私覺得任何東西都沒有最好,只是不一樣的取捨。你說YII好,可是 學習曲線過高。你說CI好,可是 封裝太簡單,沒作多少事。你說yaf好,我tm還得 編譯個擴展上去。
相關文章
相關標籤/搜索