ども、カロージです。
ちょっと、PSRについて調べることがあったのですが、元が英文で、且つ内容が堅苦しく、理解に苦しむ部分が有ったので要約したものをブログにしました。
今回は概要のみですが、PSR-0~20まで順次翻訳、要約したものをブログにしていきたいと思います。
そもそもPSR とは?
PSR(PHP Standards Recommendations の略)とは、
日本語では「PHP標準勧告」と訳され、PHP-FIG(PHP Framework Interop Group )が策定しているPHPコーディング規約を意味します。
PSR一覧
PHP-FIGのサイトを見ると一覧があり、ACCEPTEDされたインデックスは全部で18(全体では20)あります。
また、現在ドラフトのものや、非推奨となったものも一覧で見ることが可能です。
2021年9月30日時点では以下の2つが非推奨(Deprecated)となっています。
PSR-0 Autoloading Standard
PSR-2 Coding Style Guide
PSR一覧(2021年9月30日時点)
| PSR | TITLE | STATUS |
|---|---|---|
| 0 | Autoloading Standard | Deprecated |
| 1 | Basic Coding Standard | Accepted |
| 2 | Coding Style Guide | Deprecated |
| 3 | Logger Interface | Accepted |
| 4 | Autoloading Standard | Accepted |
| 5 | PHPDoc Standard | Draft |
| 6 | Caching Interface | Accepted |
| 7 | HTTP Message Interface | Accepted |
| 8 | Huggable Interface | Abandoned |
| 9 | Security Advisories | Abandoned |
| 10 | Security Reporting Process | Abandoned |
| 11 | Container Interface | Accepted |
| 12 | Extended Coding Style Guide | Accepted |
| 13 | Hypermedia Links | Accepted |
| 14 | Event Dispatcher | Accepted |
| 15 | HTTP Handlers | Accepted |
| 16 | Simple Cache | Accepted |
| 17 | HTTP Factories | Accepted |
| 18 | HTTP Client | Accepted |
| 19 | PHPDoc tags | Draft |
| 20 | Clock | Draft |
ステータスについて
- Pre-Draft(提案)
- Draft(草案)
- Review(審査)
- Accepted(承認)…正式承認。正式にPSRとして勧告されたもの。
- Deprecated(廃止予定)…新バージョンに置換されたものや、不要になったもの。PSR-0は廃予定でPSR-4に代替となっています。
- Abandoned(放棄)
仕様について
PSR文書内記載されている “MUST”, “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”, “SHOULD”, “SHOULD NOT”, “RECOMMENDED”, “MAY” 及び “OPTIONAL” は、
RFC 2119で説明される趣旨で解釈してください。とのこと
- MUST…しなければならない
- MUST NOT…してはならない
- REQUIRED…要求されている
- SHALL…することになる
- SHALL NOT…することはない
- SHOULD…する必要がある
- SHOULD NOT…しないほうがよい
- RECOMMENDED…推奨される
- MAY…してもよい
- OPTIONAL…選択可
