PHP標準勧告
PHP Standard Recommendation ( PSR )は、 PHP Framework Interop Groupによって公開されたPHP仕様です。 JavaのJava Specification Requestと同様に、PHPのプログラミング概念の標準化に役立ちます。目的は、コンポーネントの相互運用性を有効にし、最適なプログラミングとテストの実践のための実証済みの概念を実装するための共通の技術的基盤を提供することです。 PHP-FIGは、いくつかのPHPフレームワークの創設者によって形成されています。
各PSRはメンバーによって提案され、合意されたプロセスに従って一貫して行動するために、確立されたプロトコルに従って投票されます。
数 | 名前 | 説明 | 編集者 | コーディネーター | スポンサー | 状態 |
---|---|---|---|---|---|---|
PSR-0 | オートローディング標準 | オートローダーの相互運用性のために遵守する必要がある必須要件について説明します。 | なし | なし | なし | 廃止され、PSR-4に置き換えられました |
PSR-1 | 基本的なコーディング標準 | これは、共有PHPコード間の高度な技術的相互運用性を確保するために必要な標準コーディング要素と見なされるべきもので構成されます。 | なし | なし | なし | 受け入れられた |
PSR-2 | コーディングスタイルガイド | PSR-1を考慮しており、異なる作成者のコードをスキャンする際の認知摩擦を減らすことを目的としています。これは、PHPコードをフォーマットする方法に関するルールと期待の共有セットを列挙することによって行われます。 | なし | なし | なし | 受け入れられた |
PSR-3 | ロガーインターフェース | ロギングライブラリの一般的なインターフェイスについて説明します。 | ジョルディ・ボッジャーノ | なし | なし | 受け入れられた |
PSR-4 | オートローディング標準 | ファイルパスからクラスを自動ロードするための仕様について説明します。完全に相互運用可能で、PSR-0を含む他の自動ロード仕様に加えて使用できます。このPSRは、仕様に従って自動ロードされるファイルを配置する場所についても説明します。 | ポール・M・ジョーンズ | フィル・スタージョン | ラリー・ガーフィールド | 受け入れられた |
PSR-5 | PHPDoc標準 | このPSRの主な目的は、PHPDoc標準の完全かつ正式な定義を提供することです。このPSRは、その前身であるphpDocumentor 1.xに関連付けられた事実上のPHPDoc標準とは異なり、PHP言語の新しい機能のサポートを提供し、前身のいくつかの欠点に対処します。 | マイク・ヴァン・リエル | フィル・スタージョン | ドナルド・ギルバート | ドラフト |
PSR-6 | キャッシングインターフェイス | このPSRの目標は、開発者がカスタム開発を必要とせずに既存のフレームワークとシステムに統合できるキャッシュ対応ライブラリを作成できるようにすることです。 | ラリー・ガーフィールド | ポール・ドラゴニス | ロバート・ハフナー | 受け入れられた |
PSR-7 | HTTPメッセージインターフェイス | RFC 7230およびRFC 7231で説明されているHTTPメッセージを表すための一般的なインターフェイスと、RFC 3986で説明されているHTTPメッセージで使用するURIについて説明しています。 | マシュー・ワイアー・オフィニー | ボー・シメンセン | ポール・M・ジョーンズ | 受け入れられた |
PSR-8 | Huggable Interface | それは、オブジェクトが抱擁によって相互の感謝とサポートを表現する共通の方法を確立します。これにより、オブジェクトが建設的な方法でお互いをサポートできるようになり、異なるPHPプロジェクト間の連携が促進されます。 | ラリー・ガーフィールド | カル・エヴァンス | ポール・M・ジョーンズ | 放棄された |
PSR-9 | セキュリティ開示 | プロジェクトリーダーに明確に定義されたアプローチを提供し、エンドユーザーがこれらの開示に対して明確に定義された構造化形式を使用してセキュリティ開示を発見できるようにします。 | ルーカス・カーウェ・スミス | コルビン・サント | ラリー・ガーフィールド | 放棄された |
PSR-10 | セキュリティ勧告 | 研究者、プロジェクトリーダー、上流のプロジェクトリーダー、エンドユーザーに、セキュリティの脆弱性を開示するための定義され構造化されたプロセスを提供します。 | ルーカス・カーウェ・スミス | ラリー・ガーフィールド | コルビン・サント | 放棄された |
PSR-11 | コンテナインターフェース | 依存性注入コンテナーの共通インターフェースについて説明しています。目標は、フレームワークとライブラリがコンテナを使用してオブジェクトとパラメーター(このドキュメントの残りのエントリと呼ばれる)を取得する方法を標準化することです。 | マシュー・ナポリ、デビッド・ネグリエ | ポール・M・ジョーンズ | ジェレミー・リンドブロム | 受け入れられた |
PSR-12 | 拡張コーディングスタイルガイド | これは、コーディングスタイルガイドであるPSR-2を拡張、拡張、および置き換えるものであり、基本的なコーディング標準であるPSR-1を順守する必要があります。 | マイケル・カラム | コルビン・サント | アレクサンダー・マカロフ | 受け入れられた |
PSR-13 | ハイパーメディアリンク | ハイパーメディアリンクを表すための一般的なインターフェイスについて説明します。 | ラリー・ガーフィールド | マシュー・ワイアー・オフィニー | マーク・アレクサンダー | 受け入れられた |
PSR-14 | イベントマネージャ | イベントをディスパッチおよび処理するための一般的なインターフェイスについて説明します。 | ラリー・ガーフィールド | 受け入れられた | ||
PSR-15 | HTTPサーバーリクエストハンドラー | HTTPサーバー要求ハンドラーおよびHTTPメッセージを使用するHTTPサーバーミドルウェアコンポーネントの一般的なインターフェイスについて説明します。 | ウディ・ギルク | マシュー・ワイアー・オフィニー | 受け入れられた | |
PSR-16 | シンプルキャッシュ | キャッシュアイテムとキャッシュドライバー用のシンプルで拡張可能なインターフェイスについて説明します。 | ポール・ドラゴニス | ジョルディ・ボッジャーノ | ファビアン・ポテンシエ | 受け入れられた |
PSR-17 | HTTPファクトリー | PSR-7準拠のHTTPオブジェクトを作成する工場の一般的な標準について説明しています。 | ウディ・ギルク | マシュー・ワイアー・オフィニー | 受け入れられた | |
PSR-18 | HTTPクライアント | HTTP要求を送信し、HTTP応答を受信するための一般的なインターフェイスについて説明します。 | トビアス・ニーホルム | サラ・ゴレモン | 受け入れられた | |
PSR-19 | PHPDocタグ | PHPDoc標準のタグの完全なカタログを提供します。 | チャック・バージェス | ドラフト |
PHP-FIG公式Webサイトには、ハーバード大学で1997年3月にScott Bradnerが作成したRFC 2119に準拠したPSRドキュメントがあります。