PhpStorm 2026.1 Help

PHP Mess Detector

組み込みのコーディング支援に加えて、PhpStorm は PHP Mess Detector ツールとの連携によってソースコードのチェックを提供します。これにより、コードサイズ、不整合、未使用コード、命名規則の違反、設計の問題などの 潜在的な問題を検出します。

コマンドラインの代わりに PhpStorm から PHP Mess Detector を使用するには、それを PhpStorm に登録し、PhpStorm コードインスペクションとして構成する必要があります。 PhpStorm にインストールして有効化すると、ツールは開いている PHP ファイルで利用でき、起動の追加手順は必要ありません。 オンザフライコードチェックはファイルが更新されるたびにアクティブになるため、発見された問題を簡単に取り除くことができます。

PHP Mess Detector によってオンザフライで報告されるエラーと警告は、 PhpStorm の内部コードインスペクションからのエラーと警告と同様にエディターでハイライト表示されます。 ツールをバッチモードで実行すると、エラーと警告が 問題ツールウィンドウ に表示されます。 各メッセージには、PhpStorm 内部インスペクションと区別するために、 phpmd の接頭辞が付いています。

事前定義されたルール(英語)を適用したり、独自の カスタムルールセット(英語)を定義したりできます。

前提条件

PHP Mess Detector を PhpStorm に統合する前に、次の前提条件が満たされていることを確認してください:

  • PHP エンジンの実行可能ファイルを含むディレクトリをシステム パス に追加する必要があります。 これにより、コード品質ツールスクリプトがシステム全体の PHP エンジンへの呼び出しを実行できるようになります。

  • Docker Compose ベースの リモートインタープリターの場合、追加のコンテナーが生成されないように、必ず docker-compose exec モードを使用してください。

    1. 設定 ダイアログ(Ctrl+Alt+S )で PHP に移動します。

    2. 表示される PHP ページで、 CLI インタープリター リストの横にある 閲覧ボタン をクリックします。

    3. 開いた CLI インタープリター ダイアログで、選択したインタープリターの ライフサイクル モードを 既存のコンテナーに接続する ('docker-compose exec') に設定します。

      PHP インタープリター用の docker-compose exec

PHP Mess Detector をインストールして構成する

PHP Mess Detector と Composer をインストールする

PHP Mess Detector を Composer でインストールすると、PhpStorm は必要なスクリプトを自動的にダウンロードして IDE に登録し、オプションで対応する コードインスペクションを有効化して構成します。

  1. composer.json 内で、 phpmd/phpmd 依存関係レコードを require キーまたは require-dev キーに追加します。 パッケージ名とバージョンのコード補完を取得するには、 Ctrl+Space を押します。

  2. 次のいずれかを実行します:

    • エディターパネルの上部にある インストール​する​ ショートカットリンクをクリックします。

    • インストールされていない Composer パッケージ インスペクションが有効化されている場合、PhpStorm は現在インストールされていない宣言済みの依存関係をハイライトします。 Alt+Enter を押して、特定の依存関係をインストールするか、すべての依存関係を一度にインストールするかを選択します。

composer.json エディターのガター内のパッケージレコードの横にある 設定ボタン をクリックすると、対応する 設定 ページが表示され、そこで PHP Mess Detector を手動で構成できます。

composer.json の phpmd 設定のガターアイコン

PHP Mess Detector 構成をリセットする

PHP Mess Detector が最初に構成された後、 composer.json をさらに変更しても、インスペクション構成には影響しません。 新しい変更を適用するには、PHP Mess Detector 構成をリセットします。

  1. 設定 ダイアログ (Ctrl+Alt+S) で、 PHP | 品質ツール | Mess Detector に移動します。

  2. 構成 リストの横にある 閲覧ボタン をクリックします。

  3. 開いた PHP Mess Detector ダイアログで、 PHP Mess Detector パス フィールドを空にします。

    空の PHP Mess Detector パスフィールド
  4. composer.json エディターパネルの上部にある 更新する をクリックして、プロジェクト Composer の依存関係を更新します。 詳細については、 依存関係を更新する を参照してください。

PhpStorm は PHP Mess Detector の構成を新たに実行し、 composer.json の変更を適用します。

PhpStorm で PHP Mess Detector を構成する

設定Ctrl+Alt+S )|PHP | 品質ツール | PHP Mess Detector では、デフォルトの PHP インタープリターを変更したり、 手動でダウンロードしてインストールした PHP Mess Detector 実行可能ファイル のパスを設定したり、PhpStorm で実行時に PHP Mess Detector に渡すオプションを追加できます。

PHP Mess Detector の設定
  • 構成: このフィールドでは、デフォルトの PHP インタープリターと PHP Mess Detector 実行可能ファイルへのパスを変更できます。

    1. インタープリターのみを変更するには、プロジェクトで構成されたローカルおよびリモート PHP インタープリターのリストから必要な項目を選択します。

    2. PHP Mess Detector 実行可能ファイルへのパス、またはインタープリターとパスの両方を変更するには、 構成 リストの横にある 閲覧ボタン をクリックして PHP Mess Detector ダイアログを開き、 Mess Detector ダイアログ リファレンスページの説明に従ってフィールドを編集します。

  • 無視対象ファイルの表示: この設定を使用して、 PHP Mess Detector 検証インスペクションからファイルを除外します。 詳細については、 品質ツール リファレンスページを参照してください。

  • オプション :この領域で、 PHP Mess Detector を PhpStorm インスペクションとして実行するときに行う検証の横にあるチェックボックスを選択します。 詳細については、 PHP Mess Detector リファレンスページを参照してください。

PHP Mess Detector を PhpStorm インスペクションとして有効にする

PHP Mess Detector を PhpStorm インスペクションとしてセットアップする方法は、 Composer で PHP Mess Detector をインストールする際に自動的にセットアップするか、 PhpStorm のインスペクション設定で手動でセットアップするかの 2 通りがあります。

Composer で PHP Mess Detector インスペクションを有効にする

composer.json スクリプト(英語)セクション内に、デフォルトおよびカスタムの PHP Mess Detector ルールセットに関する情報を含めることができます。 プロジェクトの依存関係を インストールまたは 更新すると、指定されたルールセットが検出され、 PHP Mess Detector 検証インスペクションが自動的に有効になります。

composer.json スクリプト セクションにルールセットが指定されていない場合、PhpStorm はさらにプロジェクトルートをチェックして、 phpmd.xml のデフォルト名でルールセットを探します。 ファイルが存在する場合は、インスペクションの カスタムルールセットとして自動的に選択されます。

  • composer.json スクリプト セクションで、 phpmd PHP Mess Detector 起動コマンドをいずれかのリーフ要素に追加します。

    使用するコーディング標準を示すための引数として、組み込み標準の名前またはカスタムルールセットへのパスを指定します。

    例: 次のレコードを追加すると、 コードサイズ論争の的になる組込みルールセットと、 /my/src/custom_ruleset.xml ファイルで定義されているカスタムルールセットが選択されます。

    "scripts": { "phpmd": "phpmd codesize,controversial,/my/src/custom_ruleset.xml" }

インスペクション設定で PHP Mess Detector 検証を有効にする

  1. 設定 ダイアログ(Ctrl+Alt+S )で、 エディターインスペクション をクリックします。

  2. 開いている インスペクション ページで、 PHP | 品質ツール ノードを展開し、 PHP Mess Detector 検証 の横にあるチェックボックスを選択します。

    PHP Mess Detector 検証チェックボックスを選択する
  3. ページ右側のペインで、PhpStorm が PHP Mess Detector インスペクション出力をどう処理するかを構成します:

    1. スコープ: インスペクションアプリケーションを制限する スコープを選択します。

    2. 重大度: インスペクションの 重大度を選択します。 選択した値によって、検出された不一致が PhpStorm でどの程度深刻に扱われ、 インスペクション結果に表示されるかが決まります。

    3. エディター内のハイライト: インスペクションによって検出された問題をエディターでハイライトする方法を選択します。

チームでカスタムコーディングスタイルを共有する

  1. コーディング標準のルートディレクトリを プロジェクトルートの下に置きます。

  2. PHP Mess Detector を PhpStorm インスペクションとして設定します

  3. コーディング標準を指定します。

  4. インスペクション ページの上部で プロジェクトプロファイルが選択されていることを確認します。 このようなプロファイルは、特定のプロジェクトの .idea ディレクトリ (たとえば、 $PROJECT_DIR$/.idea/inspectionProfiles ) に保存されます。 詳細については、 インスペクションプロファイル を参照してください。

  5. 設定 ダイアログの バージョン管理の設定 ページで、 .idea ディレクトリが バージョン管理下にあることを確認します。

PHP Mess Detector をバッチモードで実行する

  1. メインメニューで コード | コードのインスペクション へ移動します。

  2. 開いた インスペクションスコープの指定 ダイアログで、リストからインスペクションプロファイルを選択するか、 構成… をクリックして インスペクションダイアログを開き、新しいプロファイルを構成します。

    構成… をクリックして、選択したインスペクションプロファイルの範囲内で適用される修正を確認し、 PHP Mess Detector 検証インスペクションが有効になっていることを確認することもできます。

  3. インスペクションの結果を 問題ツールウィンドウ で見る。 PHP Mess Detector から報告されたエラーや警告には、PhpStorm の内部インスペクションと区別するため phpmd が接頭辞として付与されます。

PHP Mess Detector 検証インスペクションからファイルを除外

Mess Detector の応答が Mess Detector ダイアログの ツールプロセスのタイムアウト フィールドで指定した制限を超えた場合、PhpStorm はファイルを 無視リストに追加することを提案します。

  1. 設定 ダイアログ (Ctrl+Alt+S) で、 PHP | 品質ツール | Mess Detector に移動します。

  2. 無視対象ファイルの表示 リンクをクリックします。

    • ファイルを追加するには、 追加ボタン をクリックし、表示されるダイアログで目的のファイルを探します。

    • リストからファイルを削除して Mess Detector に再度処理させるには、ファイルを選択して 削除ボタン をクリックします。

    • 一覧からすべてのファイルを削除するには、 閉じるボタン をクリックします。

2026 年 5 月 22 日