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

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

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

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

構成: このフィールドでは、デフォルトの PHP インタープリターと PHPStan 実行可能ファイルへのパスを変更できます。
インタープリターのみを変更するには、プロジェクトで構成されたローカルおよびリモート PHP インタープリターのリストから必要な項目を選択します。
PHPStan 実行可能ファイルへのパス、またはインタープリターとパスの両方を変更するには、 構成 リストの横にある
をクリックして PHPStan ダイアログを開き、 PHPStan ダイアログ リファレンスページの説明に従ってフィールドを編集します。
無視対象ファイルの表示: この設定を使用して、 PHPStan 検証インスペクションからファイルを除外します。 詳細については、 品質ツール リファレンスページを参照してください。
オプション :この領域で、 PHPStan コマンドオプションを追加し、 PHPStan を PhpStorm インスペクションとして実行します。 PHPStan のリファレンスページの説明に従って、フィールドを編集します。
PHPStan を PhpStorm インスペクションとして有効にする
PHPStan を PhpStorm インスペクションとして設定するには、 Composer で PHPStan をインストールする際に自動または PhpStorm のインスペクション設定で手動の方法があります。
PHPStan インスペクションを Composer で有効にする
composer.json の スクリプト(英語)セクション内に PHPStan 構成ファイルに関する情報を含めることができます。 プロジェクトの依存関係を インストールまたは 更新すると、指定された構成ファイルが検出され、 PHPStan 検証インスペクションが自動的に有効になります。
composer.json の スクリプト セクションで構成ファイルが指定されていない場合、PhpStorm はさらにプロジェクトルートを確認し、 phpstan.neon または phpstan.neon.dist のデフォルト名のルールセットを探します。
composer.json の
スクリプトセクションで、phpstanPHPStan 起動コマンドをリーフ要素の 1 つに追加します。-c引数と構成ファイルへのパスを指定します。"scripts": { "phpstan": "vendor/bin/phpstan -c phpstan.neon" }
インスペクション設定で PHPStan 検証を有効にする
設定 ダイアログ(Ctrl+Alt+S )で、 エディター の インスペクション をクリックします。
開いている インスペクション ページで、 ノードを展開し、 PHPStan 検証 の横にあるチェックボックスを選択します。

インスペクション ページの右側ペインで、PhpStorm が PHPStan インスペクション出力をどのように処理するかを構成します:
スコープ: インスペクションアプリケーションを制限する スコープを選択します。
重大度: インスペクションの 重大度を選択します。 選択した値によって、検出された不一致が PhpStorm でどの程度深刻に扱われ、 インスペクション結果に表示されるかが決まります。
エディター内のハイライト: インスペクションによって検出された問題をエディターでハイライトする方法を選択します。
PHPStan をバッチモードで実行する
メインメニューで へ移動します。
開いた インスペクションスコープの指定 ダイアログで、リストからインスペクションプロファイルを選択するか、 構成… をクリックして インスペクションダイアログを開き、新しいプロファイルを構成します。
構成… をクリックして、選択したインスペクションプロファイルの範囲内で適用される修正を確認し、 PHPStan 検証インスペクションが有効になっていることを確認することもできます。
インスペクションの結果を 問題ツールウィンドウ で見る。 PHPStan から報告されたエラーおよび警告には、PhpStorm 内部インスペクションと区別するために
phpstan::の接頭辞が付加されます。
PHPStan 検証インスペクションからファイルを除外する
PHPStan の応答待機が、 PHPStan ダイアログの ツールプロセスのタイムアウト フィールドで指定された制限を超えた場合、PhpStorm はファイルを 無視リストに追加することを提案します。
設定 ダイアログ (Ctrl+Alt+S) で、 に移動します。
無視対象ファイルの表示 リンクをクリックします。
ファイルを追加するには、
をクリックし、表示されるダイアログで目的のファイルを探します。
リストからファイルを削除して PHPStan に再度処理させるには、ファイルを選択して
をクリックします。
一覧からすべてのファイルを削除するには、
をクリックします。