PSR 是 PHP Standard Recommendations 的简写,由 PHP FIG 组织制定的 PHP 规范,是 PHP 开发的实践标准。
PHP FIG,FIG 是 Framework Interoperability Group(框架可互用性小组)的缩写,由几位开源框架的开发者成立于 2009 年,从那开始也选取了很多其他成员进来(包括但不限于 Laravel, Joomla, Drupal, Composer, Phalcon, Slim, Symfony, Zend Framework 等),虽然不是「官方」组织,但也代表了大部分的 PHP 社区。
项目的目的在于:通过框架作者或者框架的代表之间讨论,以最低程度的限制,制定一个协作标准,各个框架遵循统一的编码规范,避免各家自行发展的风格阻碍了 PHP 的发展,解决这个程序设计师由来已久的困扰。
目前已表决通过了 6 套标准,已经得到大部分 PHP 框架的支持和认可。
本项目的主要面向对象是所有参与的各个成员(也就是各自框架的社区),这里是完整的 成员列表,当然,同时也欢迎其它 PHP 社区采用本规范。
此中文翻译由 @Summer 维护,主要针对「已通过」的 PSR 进行翻译,排版遵照 中文文案排版指北,更多讨论请前往 PHPHub。
按表决情况索引
已通过
序号 | 标题 | 撰稿者 | 协调者 | 发起人 |
---|---|---|---|---|
1 | 基础编码规范 | Paul M. Jones | N/A | N/A |
2 | 编码风格规范 | Paul M. Jones | N/A | N/A |
3 | 日志接口规范 | Jordi Boggiano | N/A | N/A |
4 | 自动加载规范 | Paul M. Jones | Phil Sturgeon | Larry Garfield |
6 | 缓存接口规范 | Larry Garfield | Paul Dragoonis | Robert Hafner |
7 | HTTP 消息接口规范 | Matthew Weier O’Phinney | Beau Simensen | Paul M. Jones |
审查中
序号 | 标题 | 撰稿者 | 协调者 | 发起人 |
---|
起草中
序号 | 标题 | 撰稿者 | 协调者 | 发起人 |
---|---|---|---|---|
5 | PHPDoc 标准 | Mike van Riel | Vacant | Vacant |
8 | Huggable 接口 | Larry Garfield | Vacant | Paul M. Jones |
9 | 项目安全问题公示 | Lukas Kahwe Smith | Korvin Szanto | Larry Garfield |
10 | 项目安全上报方法 | Lukas Kahwe Smith | Larry Garfield | Korvin Szanto |
11 | 服务容器接口 | Matthieu Napoli, David Négrier | Paul M. Jones | Vacant |
12 | 全量编码风格规范 | Korvin Szanto | Alexander Makarov | Robert Deutz |
13 | 超媒体链接 | Larry Garfield | Matthew Weier O’Phinney | Evert Pot |
已废弃
序号 | 标题 | 撰稿者 | 协调者 | 发起人 |
---|---|---|---|---|
0 | 自动加载规范 | Matthew Weier O’Phinney | N/A | N/A |
按照数字索引
状态 | 序号 | 标题 | 撰稿者 | 协调者 | 发起人 |
---|---|---|---|---|---|
X | 0 | 自动加载规范 | Matthew Weier O’Phinney | N/A | N/A |
A | 1 | 基础编码规范 | Paul M. Jones | N/A | N/A |
A | 2 | 编码风格规范 | Paul M. Jones | N/A | N/A |
A | 3 | 日志接口规范 | Jordi Boggiano | N/A | N/A |
A | 4 | 自动加载规范 | Paul M. Jones | Phil Sturgeon | Larry Garfield |
D | 5 | PHPDoc 标准 | Mike van Riel | Vacant | Vacant |
A | 6 | 缓存接口规范 | Larry Garfield | Paul Dragoonis | Robert Hafner |
A | 7 | HTTP 消息接口规范 | Matthew Weier O’Phinney | Beau Simensen | Paul M. Jones |
D | 8 | Huggable 接口 | Larry Garfield | Vacant | Paul M. Jones |
D | 9 | 项目安全问题公示 | Lukas Kahwe Smith | Korvin Szanto | Larry Garfield |
D | 10 | 项目安全上报方法 | Lukas Kahwe Smith | Larry Garfield | Korvin Szanto |
D | 11 | 服务容器接口 | Matthieu Napoli, David Négrier | Paul M. Jones | Vacant |
D | 12 | 全量编码风格规范 | Korvin Szanto | Alexander Makarov | Robert Deutz |
D | 13 | 超媒体链接 | Larry Garfield | Matthew Weier O’Phinney | Evert Pot |
说明: A (Accepted) = 已通过 | D (Draft) = 起草中 | R (Review) = 审查中 | X (Deprecated) = 已废弃