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) = 已废弃