数据核对:2026-10-22(GitHub API 实测 star 数、最新版本、最近提交) 本文讨论的是「选哪个框架」,各框架的具体用法见对应的入门文章。
FrankenPHP 是用 Go 写、内嵌 Caddy 的 PHP 应用服务器。它把 PHP 编译进一个常驻进程,对外提供 HTTP/2、HTTP/3、自动 HTTPS。
Swoole 不是框架,是 PHP 扩展。 它给 PHP 加上协程、常驻内存、异步 IO 的能力,但不提供路由、ORM、模板。
Webman 是建在 Workerman 之上的框架,补上了路由、中间件、ORM、模板这些框架该有的东西,同时保持「常驻内存 + 轻量」。
Workerman 是纯 PHP 的常驻内存网络库,不是框架。它提供事件循环、TCP/UDP/WebSocket 服务端、定时器、进程管理。
Hyperf 是基于 Swoole/Swow 的协程框架,常驻内存。国内高并发场景(秒杀、IM、网关)用得不少。
维护状态提示:ThinkPHP 主仓最后一次版本发布是 2025-07-16(8.1.3),最后一次提交同月。8.x 已足够稳定,但新特性不会再有了。本文按「仍可使用」来写,同时标出需要注意的地方。
Symfony 常被当成「Laravel 的竞争对手」,其实它更像PHP 的标准库。
Laravel 入口:路由把请求交给控制器,容器提供依赖,视图或 JSON 形成响应。约定减少配置,但每一步仍有可追踪的输入输出。
Throwable 是可捕获错误与异常的共同接口。捕获后应恢复、转换或传播,不是把所有失败都变成成功返回。