PHP 框架生態歷經三代演進:第一代 (CI、Cake、Yii 1、Zend 1) 確立 MVC;第二代 (Laravel 5、Symfony 3/4、Yii 2、Phalcon) 引入 Composer、PSR、DI、中介軟體;第三代 (Hyperf、Swoole、OpenSwoole、Webman、Laravel Octane) 擁抱常駐記憶體、協程、高併發。本文對 22 個框架做多維度對比,助你按專案屬性選型。
| 類別 | 代表框架 | 核心特徵 | 適用場景 |
|---|---|---|---|
| 全棧 MVC (傳統請求-回應) | Laravel 10/11 | Eloquent ORM、Artisan、Blade、Octane、生態最豐 | 中大型 SaaS、電商、管理後台、快速交付 |
| Symfony 6/7 | 元件化、Contracts、Flex、長期支援 (LTS) | 企業級、長生命週期、高度可定製、微服務 | |
| CodeIgniter 4 | 輕量、零配置、單檔案核心、效能優 | 中小專案、共享主機、遷移舊專案、學習曲線平緩 | |
| Yii 2 | Gii 代碼生成、ActiveRecord、效能強、安全預設 | 高流量 API、後台系統、團隊規範嚴格 | |
| CakePHP 4/5 | 約定優於配置、Bake、ORM、PSR-7/15 | 快速原型、資料驅動應用 | |
| Phalcon 5/6 | C 擴展載入、極低記憶體、Zephir 語言開發 | 極致效能需求、嵌入式、高併發 API | |
| Laminas (Zend Framework 3) | 模組化、事件驅動、企業級標準 | 大型企業系統、模組化架構、Java 團隊轉型 | |
| Slim 4 | 微框架、PSR-7/15、路由、DI 容器可插拔 | REST API、微服務、Serverless、輕量中介層 | |
| Flight | 單檔案、靜態方法、極簡 | 原型、教學、極小專案 | |
| Fat-Free (F3) | 輕量、模板、ORM、快取、CLI 內建 | 中小專案、需內建工具箱 | |
| FuelPHP | HMVC、油管、ORM、安全 | 模組化大型應用 | |
| Kohana (已停更) | HMVC、輕量、Kohana 3.3 為最後版 | 維護舊專案 | |
| Prado | 元件化、事件驅動、ViewState 類 WebForms | 企業級 WebForms 風格 | |
| Akelos | Rails 風格 MVC、ActiveRecord | Ruby 開發者轉 PHP | |
| Recess | RESTful、輕量、PHP 5.3+ | API 導向 | |
| Agavi | MVC、配置驅動、國際化強 | 多語言大型應用 | |
| Qcodo / QPHP | 代碼生成、ORM、事件 | 資料庫優先開發 | |
| Seagull | 穩定、CLI/GUI/Web 三模式、範例豐富 | 教學、多介面應用 | |
| evoCore | 部落格/CMS 核心、插件系統 | 內容型網站 | |
| Lion | 微框架、路由、中介軟體 | API、微服務 | |
| 高效能常駐/協程 (第三代) | Swoole / OpenSwoole | C 擴展、協程、HTTP/WebSocket/TCP/UDP Server、毫秒級調度 | 即時通訊、遊戲、高頻交易、物聯網、Serverless 運行時 |
| Hyperf 3 | 基於 Swoole、DI、註解、PSR、协程池、治理、熱更新 | 微服務、高併發 API、長連線、雲原生 | |
| Webman / Workerman | 純 PHP、無擴展依賴、熱重載、高效能 | 不想裝擴展的高併發場景、快速上手 | |
| Laravel Octane | Swoole/RoadRunner 驅動 Laravel、常駐記憶體、加速 10x+ | 現有 Laravel 專案零改動提升吞吐 |
| 框架 | 學習曲線 | 生態豐富度 | 效能 (傳統 FPM) | 效能 (常駐/協程) | 企業級支援 | 長期維護 |
|---|---|---|---|---|---|---|
| Laravel | 2 | 5 | 3 | 5 (Octane) | 4 | 5 |
| Symfony | 4 | 5 | 3 | 4 | 5 | 5 |
| CodeIgniter 4 | 1 | 2 | 4 | 2 | 2 | 4 |
| Yii 2 | 3 | 3 | 4 | 3 | 4 | 3 |
| Hyperf | 4 | 3 | - | 5 | 4 | 4 |
| Webman | 2 | 2 | - | 5 | 3 | 4 |
| Slim | 2 | 3 | 4 | 4 | 3 | 3 |
| Phalcon | 4 | 2 | 5 | 5 | 3 | 3 |
START
├─ 需要常駐記憶體/協程/高併發長連線?
│ ├─ 是 → 團隊有 Swoole 經驗?
│ │ ├─ 是 → Hyperf (微服務治理) / Webman (純 PHP 簡單)
│ │ └─ 否 → Laravel Octane (零改動) / Swoole 原生
│ └─ 否 → 傳統 FPM 模式
│ ├─ 專案規模大、長期維護、企業級? → Symfony (LTS) / Laravel
│ ├─ 團隊新手多、共享主機、快速交付? → CodeIgniter 4 / Laravel
│ ├─ 極致效能、願意接受 C 擴展依賴? → Phalcon
│ ├─ 只需輕量 API/微服務? → Slim / Flight
│ └─ 遷移舊 CI/Yii 專案? → 同系列升級 (CI3→4, Yii1→2)
END
composer show -i 依賴樹,避免引入整個 Symfony/Laravel 核心。沒有最好的框架,只有最適合當下團隊能力、專案屬性、長期演進的框架。建立「框架評估清單」、定期複盤技術債,才能在 PHP 框架百花齊放的生態中保持技術主動權。