PHP_CodeSniffer
PhpStorm は、 PHP_CodeSniffer ツールと統合することでコードスタイルチェックを提供し、選択したコーディング標準とコードが一致しているかどうかを検証します。 あらかじめ定義された コーディング標準のいずれかを指定するか、デフォルトの PHP_CodeSniffer の Standards ディレクトリ外にルートディレクトリを持つ 独自に定義したコーディング標準を使用できます。 さらに、独自のコードスタイルをチームで共有できます。
コマンドラインの代わりに PhpStorm の PHP_CodeSniffer を使用するには、それを PhpStorm に登録し、PhpStorm の コードインスペクションとして構成する必要があります。 PhpStorm にインストールして有効化すると、ツールは開いている PHP ファイルで利用でき、起動の追加手順は必要ありません。 オンザフライコードチェックはファイルが更新されるたびにアクティブになるため、発見された問題を簡単に取り除くことができます。
PHP_CodeSniffer によってオンザフライで報告されるエラーと警告は、 PhpStorm の内部コードインスペクションからのエラーと警告と同じ方法でエディターでハイライトされます。 ツールをバッチモードで実行すると、エラーと警告が 問題ツールウィンドウ に表示されます。 各メッセージには、PhpStorm 内部インスペクションと区別するために、 phpcs の接頭辞が付いています。
PhpStorm は PHP Code Beautifier and Fixerツールとも統合されており、検出された問題の多くを修正できます。
前提条件
PHP_CodeSniffer を PhpStorm に統合する前に、次の前提条件が満たされていることを確認してください:
PHP_CodeSniffer バージョン 1.5.0 以降を使用しています。
PHP エンジンの実行可能ファイルを含むディレクトリをシステム
パスに追加する必要があります。 これにより、コード品質ツールスクリプトがシステム全体の PHP エンジンへの呼び出しを実行できるようになります。Docker Compose ベースの リモートインタープリターの場合、追加のコンテナーが生成されないように、必ず
docker-compose execモードを使用してください。設定 ダイアログ(Ctrl+Alt+S )で に移動します。
表示される PHP ページで、 CLI インタープリター リストの横にある
をクリックします。
開いた CLI インタープリター ダイアログで、選択したインタープリターの ライフサイクル モードを 既存のコンテナーに接続する ('docker-compose exec') に設定します。

PHP_CodeSniffer をインストールして構成する
Composer で PHP_CodeSniffer をインストールする
PHP_CodeSniffer を Composer と共にインストールすると、PhpStorm は必要なスクリプトを自動的にダウンロードし、IDE に登録し、オプションで対応する コードインスペクションを有効化して構成します。
composer.json 内で、
squizlabs/php_codesniffer依存関係レコードをrequireキーまたはrequire-devキーに追加します。 パッケージ名とバージョンのコード補完を取得するには、 Ctrl+Space を押します。次のいずれかを実行します:
エディターパネルの上部にある インストールする ショートカットリンクをクリックします。
インストールされていない Composer パッケージ インスペクションが有効化されている場合、PhpStorm は現在インストールされていない宣言済みの依存関係をハイライトします。 Alt+Enter を押して、特定の依存関係をインストールするか、すべての依存関係を一度にインストールするかを選択します。
composer.json エディターのガター内のパッケージレコードの横にある をクリックすると、対応する 設定 ページが表示され、そこで PHP_CodeSniffer を手動で構成できます。

PHP_CodeSniffer 設定をリセット
PHP_CodeSniffer が最初に構成された後、 composer.json をさらに変更しても、インスペクション構成には影響しません。 新しい変更を適用するには、PHP_CodeSniffer 構成をリセットします。
設定 ダイアログ (Ctrl+Alt+S) で、 に移動します。
構成 リストの横にある
をクリックします。
開いた PHP_CodeSniffer ダイアログで、 PHP_CodeSniffer パス フィールドを空にします。

composer.json エディターパネルの上部にある 更新する をクリックして、プロジェクト Composer の依存関係を更新します。 詳細については、 依存関係を更新する を参照してください。
PhpStorm は PHP_CodeSniffer の構成を新たに実行し、 composer.json の変更を適用します。
PhpStorm で PHP_CodeSniffer を構成する
Composer を使用して PHP_CodeSniffer をインストールすると、PhpStorm は vendor/bin フォルダー内の PHP_CodeSniffer および PHP Code Beautifier and Fixer の実行可能ファイルを自動的に検出し、システムパスで構成された PHP インタープリターを設定して実行します。
設定 (Ctrl+Alt+S) | で、デフォルトの PHP インタープリターを変更したり、パスを 手動でダウンロードしてインストールした PHP_CodeSniffer 実行可能ファイルに設定したり、PhpStorm で PHP_CodeSniffer を実行する際に渡されるオプションを追加できます。

構成: このフィールドでは、デフォルトの PHP インタープリターと、PHP_CodeSniffer および PHP Code Beautifier と Fixer の実行可能ファイルへのパスを変更できます。
インタープリターのみを変更するには、プロジェクトで構成されたローカルおよびリモート PHP インタープリターのリストから必要な項目を選択します。
実行可能ファイルへのパス、またはインタープリターとパスの両方を変更するには、 構成 リストの横にある
をクリックして PHP_CodeSniffer ダイアログを開き、 PHP_CodeSniffer ダイアログ リファレンスページの説明に従ってフィールドを編集します。
無視対象ファイルの表示: この設定を使用して、 PHP_CodeSniffer 検証インスペクションからファイルを除外します。 詳細については、 品質ツール リファレンスページを参照してください。
オプション: この領域で、 PHP_CodeSniffer を PhpStorm インスペクションとして実行するオプションを追加します。 PHP_CodeSniffer リファレンスページの説明に従って、フィールドを編集します。
PHP_CodeSniffer を PhpStorm インスペクションとして有効にする
PHP_CodeSniffer を PhpStorm インスペクションとして設定するには、 Composer で PHP_CodeSniffer をインストールする際に自動で設定する方法と、 PhpStorm のインスペクション設定で手動で設定する方法があります。
PHP_CodeSniffer インスペクションを Composer で有効にする
composer.json の スクリプト(英語)セクション内に、デフォルトおよびカスタムの PHP_CodeSniffer ルールセットに関する情報を含めることができます。 プロジェクトの依存関係を インストールまたは 更新すると、指定されたルールセットが検出され、 PHP_CodeSniffer 検証インスペクションが自動的に有効になります。
composer.json の スクリプト セクションにルールセットが指定されていない場合、PhpStorm はさらにプロジェクトルートをチェックして、 phpcs.xml のデフォルト名でルールセットを探します。 ファイルが存在する場合は、インスペクションの カスタムルールセットとして自動的に選択されます。
composer.json の
スクリプトセクションで、phpcsPHP_CodeSniffer 起動コマンドをリーフ要素の 1 つに追加します。使用するコーディング標準を示すために
--標準引数を指定します。 例: 次のレコードを追加すると PSR2 にコーディング標準が設定されます。"scripts": { "phpcs": "phpcs --standard=PSR2" }次のレコードを追加すると、コーディング標準が カスタムに設定され、ルールセットのパスが <project root>/phpcs.xml に設定されます。
"scripts": { "phpcs": "phpcs --standard=phpcs.xml" }
さらに、 composer.json の require-dev セクション内にカスタムの非 PSR 標準依存関係を提供して、自動的に検出させることもできます。 現在、以下の規格がサポートされています。
インスペクション設定で PHP_CodeSniffer 検証を有効にする
設定 ダイアログ(Ctrl+Alt+S )で、 エディター の インスペクション をクリックします。
開いている インスペクション ページで、 ノードを展開し、 PHP_CodeSniffer 検証 の横にあるチェックボックスを選択します。

ページの右側のペインで、PhpStorm が PHP_CodeSniffer インスペクション出力をどのように処理するかを構成してください:
スコープ: インスペクションアプリケーションを制限する スコープを選択します。
重大度: インスペクションの 重大度を選択します。 選択した値によって、検出された不一致が PhpStorm でどの程度深刻に扱われ、 インスペクション結果に表示されるかが決まります。
エディター内のハイライト: インスペクションによって検出された問題をエディターでハイライトする方法を選択します。
PHP_CodeSniffer をバッチモードで実行する
メインメニューで へ移動します。
開いた インスペクションスコープの指定 ダイアログで、リストからインスペクションプロファイルを選択するか、 構成… をクリックして インスペクションダイアログを開き、新しいプロファイルを構成します。
構成… をクリックして、選択したインスペクションプロファイルの範囲内で適用される修正を確認し、 PHP_CodeSniffer 検証インスペクションが有効になっていることを確認することもできます。
インスペクションの結果を 問題ツールウィンドウ で見る。 PHP_CodeSniffer によって報告されるエラーおよび警告は、PhpStorm の内部インスペクションと区別するために
phpcsの接頭辞が付けられます。
PHP_CodeSniffer によって検出された問題を修正
PhpStorm は PHP Code Beautifier and Fixerツールと統合されており、検出された問題の多くを修正できます。 PHP_CodeSniffer を Composer とともにインストールすると、 PHP コードの美化と修正が検出され、自動的にセットアップされます。 それ以外の場合は、 手動で設定する必要があります。
クイックフィックスを使用して問題を修正する
PhpStorm は問題を検出すると、PHP_CodeSniffer インスペクション設定に従ってハイライトします。
検出された問題にキャレットを置いて
をクリックするか、 Alt+Enter を押します。ポップアップメニューから PHP コードの美化と修正: ファイル全体を修正する を選択してください。 これにより、現在のファイルで検出されたすべての問題が修正されます。
バッチモードで問題を検出したり、 コードの再フォーマットで自動的に修正したりすることもできます。
コードの再フォーマットに関する問題を修正する
コードの再フォーマットアクションを実行することで、PHP_CodeSniffer によって検出された問題を修正できます。
品質ツールの設定で PHP コードの美化と修正 を外部フォーマッタとして設定します。
これを行うには、 設定 ダイアログ (Ctrl+Alt+S) で に移動し、 外部フォーマッター セクションで PHP コードの美化と修正 を選択します。

必要なファイルまたはプロジェクトスコープに コードの整形を適用します。
エディターで開かれたコードフラグメントまたはファイルの場合、メインメニューから を選択するか、 Ctrl+Alt+L を押します。
プロジェクト ツールウィンドウで選択したファイル、ディレクトリ、ファイルのグループについて、コンテキストメニューから を選択するか、 Ctrl+Alt+L を押します。
PHP_CodeSniffer 検証インスペクションからファイルを除外
PHP_CodeSniffer の応答待ちが PHP_CodeSniffer ダイアログの ツールプロセスのタイムアウト フィールドで指定された制限を超えた場合、PhpStorm はそのファイルを 無視リストに追加することを提案します。
設定 ダイアログ (Ctrl+Alt+S) で、 に移動します。
無視対象ファイルの表示 リンクをクリックします。
ファイルを追加するには、
をクリックし、表示されるダイアログで目的のファイルを探します。
リストからファイルを削除し、PHP_CodeSniffer で再度処理するには、ファイルを選択して
をクリックします。
一覧からすべてのファイルを削除するには、
をクリックします。