尽管 PHP 的创始人 Rasmus Lerdorf 已逐渐淡出核心开发,但 PHP 的持续迭代由 专业团队、开源社区和企业 共同驱动,形成了成熟的协作模式。以下是当前 PHP 版本维护的关键角色和机制:
1. PHP 核心开发团队
核心开发者:
PHP 的维护由一组全职或兼职的核心开发者主导,包括:
Nikita Popov(曾主导 PHP 7/8 的 JIT 编译器开发,现任职于 JetBrains)。
Dmitry Stogov(Zend 引擎优化专家,Swoole 扩展作者之一)。
Sara Golemon(PHP 7/8 版本发布经理,RFC 流程推动者)。
其他活跃贡献者:如 Joe Watkins(PCNTL/FFI 扩展维护者)、Derick Rethans(Xdebug 作者)等。
团队运作:
通过 邮件列表(php-internals)和 GitHub(php-src 仓库)协作开发。
版本发布遵循 RFC 流程:任何开发者可提交功能提案,经社区讨论、投票后决定是否纳入。
2. 开源社区的贡献
RFC 提案与投票:
社区成员可通过 RFC 提出新功能(如 PHP 8.0 的 Attributes、PHP 8.2 的 readonly 类),核心团队和社区共同评估技术可行性。
代码贡献:
开发者可提交补丁(如性能优化、Bug 修复),经核心开发者审核后合并。例如:
PHP 8.3 的 DNS-over-HTTPS 支持由社区开发者贡献。
类型系统改进(如 null 合并赋值 ??=)也来自社区提案。
工具与生态支持:
Composer(依赖管理)、PHPUnit(测试框架)、Xdebug(调试工具)等社区项目会快速适配新版本,推动开发者升级。
框架支持:Laravel、Symfony 等框架会明确最低 PHP 版本要求,反向促进社区升级。
3. 企业的支持与赞助
资源投入:
JetBrains:赞助 Nikita Popov 等核心开发者,支持 PHP 开发。
Automattic(WordPress 母公司):长期支持 PHP 生态,推动 WordPress 兼容新版本。
Tidelift、Open Collective:通过捐款支持核心开发者工作。
长期支持(LTS)版本:
某些企业(如 Laravel 团队)会为特定 PHP 版本提供延长支持(如 Laravel 对 PHP 8.1 的支持),确保旧项目平稳过渡。
4. 版本发布与维护机制
版本周期:
主版本(如 PHP 8.x):每 1-2 年发布一次,引入重大特性。
次版本(如 PHP 8.1、8.2):每半年发布一次,增加新功能或优化。
安全更新(如 PHP 8.0.x):对已发布版本提供 2-3 年安全补丁。
安全维护:
核心团队会定期发布安全公告,修复漏洞(如 CVE 编号的漏洞)。
旧版本(如 PHP 5.x)已停止支持,开发者需升级到受支持版本。
5. 创始人角色的转变
Rasmus Lerdorf 的现状:
Rasmus 已不再直接参与 PHP 核心开发,但仍是社区顾问,偶尔参与讨论。
他的角色从“主导开发”转变为“精神领袖”,PHP 的技术方向由核心团队决定。
影响:
PHP 的去中心化开发模式(类似 Linux)已成熟,创始人淡出不会影响项目发展。
6. 开发者如何参与维护?
贡献代码:
修复 Bug、优化性能、提交新功能(需遵循 RFC 流程)。
测试新版本:
在开发环境试用 PHP 8.3+,反馈兼容性问题。
使用工具辅助升级:
Rector:自动化代码升级工具,将旧代码迁移到新版本语法。
PHPStan/Psalm:静态分析工具,发现类型问题。
参与社区讨论:
通过邮件列表、GitHub Issues 或 PHP 用户组(如 PHP UK)交流。
总结:PHP 的维护现状
核心团队主导:PHP 的版本更新由专业开发者团队驱动,技术决策透明且社区驱动。
社区与企业协作:开源生态和企业赞助共同支持 PHP 的长期发展。
创始人淡出不影响:PHP 的去中心化开发模式已成熟,类似 Linux 的维护方式。
开发者参与路径清晰:无论是代码贡献、测试反馈还是工具使用,开发者均可深度参与。
PHP 的持续迭代表明,它仍是 Web 开发领域的重要语言,远未过时。核心团队和社区的协作确保了 PHP 的技术先进性和生态活力。