PhpStorm 2024.3 ヘルプ

インスペクションの重大度を変更する

インスペクション重大度レベルは、検出されたコードの問題がプロジェクトに与える影響の深刻度を示します。PhpStorm には、定義済みの一連の重大度レベルがあります。

Error icon エラー

構文エラー

Warning icon 警告

バグを引き起こす可能性がある、または拡張が必要なコードの断片

Weak Warning icon 弱い警告

改善または最適化できるコードの断片 (冗長なコード、重複したコードフラグメントなど)

Server Problem icon サーバーの問題

外部ビルドサーバー (TeamCity など) に起因する問題

the Typo icon 文法エラー

文法の間違い。この重大度は、バンドルされている Grazie Lite(英語) プラグインに起因します。詳細については、「文法」を参照してください。

the Typo icon タイポ

スペルミスとタイプミス。詳細については、スペルチェックを参照してください。

考慮

改善できるコードの断片。この重大度レベルはエラーストライプにマークされておらず、デフォルトのハイライトスタイルもありませんが、既存のスタイルのリストから 1 つ選択するか、独自のスタイルを構成できます。

ハイライトしない (修正を使用できます)

コードはハイライトされませんが、Alt+Enter を押すと修正を呼び出すことができます。

重大度ごとに、エディターで独自のハイライトスタイルを構成できます。

重大度レベルは問題を示すように設計されており、コードの実行に影響を与えません。スペルミスの重大度をタイポからエラーに変更しても、アプリケーションの実行には影響しません。

すべてのスコープでインスペクションの重大度を変更する

  1. Ctrl+Alt+S を押して設定を開き、エディター | インスペクションを選択します。

  2. 変更するプロファイルを選択し、リストからインスペクションを選択します。有効になっていることを確認してください。

  3. 重大度リストから、新しい重大度を選択します。インスペクションを右クリックして、コンテキストメニューから重大度を選択することもできます。

    必要な重大度がリストにない場合は、重要度の編集をクリックして新しい重大度を作成します

  4. エディター内のハイライトリストから、エディターでコードフラグメントをハイライトするために使用するスタイルを選択します。

    ハイライトの編集を選択して、既存のスタイルを変更します

    Selecting severity level for an inspection
  5. 変更を適用し、ダイアログを閉じます。

    変更されたインスペクションには、選択したプロファイルに新しい重大度レベルが設定されます。

特定のスコープでインスペクションの重大度を変更する

  1. Ctrl+Alt+S を押して設定を開き、エディター | インスペクションを選択します。

  2. 変更するプロファイルを選択し、リストからインスペクションを選択します。有効になっていることを確認してください。

  3. スコープリストから、重大度を変更したいスコープを選択します。

    PhpStorm は、2 つのスコープ(選択されたスコープとその他すべての場所)の重大度を示しています。

    もう 1 つスコープを追加するには、the Add button をクリックします。新しいスコープを作成したい場合は、スコープのリストからスコープ順序の編集を選択して the Edit icon をクリックします。

  4. 重大度リストから必要な重大度レベルを選択します。

    必要な重大度がリストにない場合は、重要度の編集をクリックして新しい重大度を作成します

    Changing inspection severity by scope
  5. さらに、エディター内のハイライトリストから、エディターでコードフラグメントをハイライトするために使用するスタイルを選択します。

    ハイライトの編集を選択して、既存のスタイルを変更します

複数のスコープでインスペクションを有効にし、これらのスコープ内のファイルが一致する場合、IDE はこれらのスコープをリスト内の順序に従って処理します。詳しくは、スコープの順序を変更するを参照してください。

エラーのハイライトを構成する

  1. Ctrl+Alt+S を押して IDE 設定を開き、エディター | カラースキームの切り替え | 一般を選択します。

    インスペクション設定からハイライトを構成することもできます。エディター | インスペクションに移動し、有効なインスペクションをクリックして、エディター内のハイライトリストからハイライトの編集を選択します。

  2. エラーと警告リストから、変更するスタイルを選択します。

  3. 右側のオプションを使用して、新しいハイライトルールを構成します。変更を適用する前にプレビューするには、ダイアログの下部にあるプレビューセクションを使用します。

    Changing error highlighting

新しい重大度レベルを作成する

  1. Ctrl+Alt+S を押して設定を開き、エディター | インスペクションを選択します。

  2. 新しい重大度レベルを作成するプロファイルを選択します。

  3. 任意のインスペクションをクリックして、重大度レベルのリストから重要度の編集を選択します。

  4. 重要度エディターダイアログで、the Add button をクリックして新しい重要度レベルを指定します。

  5. Up および Down ボタンを使用してフォーマットを設定し、優先順位を設定します。重要度をリストに追加するほど優先順位が高くなります。

  6. 終了したら OK をクリックします。

    Creating a new severity

未定義要素用のインスペクションのカスタマイズ

PHP コンテキストでは、未定義のフィールドおよび未定義のメソッドインスペクションは、実際には問題が発生していないのに、誤って重大な問題を報告する場合があります。これは、参照されているクラスに __get()__set()__call() マジックメソッド(英語)が含まれているときに、プロパティにアクセスまたは値を割り当てようとしたり、明示的に定義されていないメソッドを呼び出そうとした場合に発生します。これらのメソッドは未定義のプロパティまたはメソッドが参照されるたびに呼び出されるため、このような場合はエラーを報告しないでください。ただし、PhpStorm は、インスペクションに指定した重大度レベルに応じて、エラーまたは警告として扱います。

未定義フィールドエラーの報告を抑制

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

  2. リストから未定義のフィールドインスペクションを選択します。

  3. オプション領域で、マジックメソッドを使用してフィールドへのアクセスを通知するPHP の動的フィールド宣言について通知するチェックボックスをオフにします。

チェックボックスが選択されていると、クラスに __get() および __set() マジックメソッドが含まれていても、PhpStorm はエラーを報告します。

未定義のメソッドエラーの報告を調整する

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

  2. リストから未定義のメソッドインスペクションを選択します。

  3. オプション領域で、__magic メソッドがクラスに存在する場合、ダウングレードの重大度チェックボックスを選択します。

未定義のメソッドは、インスペクション一般に指定されているものよりも 1 段階低い重大度レベルで表示されます(デフォルトでは、警告ではなく情報)。

未定義の変数エラーのレポートを構成する

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

  2. リストから未定義のフィールドインスペクションを選択します。

  3. オプションエリアで、インスペクションを次のように設定します。

    • グローバル空間でインスペクションを有効にする : このチェックボックスを選択して、関数 / メソッド、クラス、名前空間の外部の変数、つまりグローバル空間(英語)でインスペクションを実行します。

      Undefined variable in global space
    • 変数が定義されていない可能性があることを報告します : このチェックボックスを選択すると、変数の定義が確実に欠落していなくてもエラーを報告します。このような状況は、変数がいくつかのパスで使用されている場合に発生することがあり、そのうちのいくつかは、たとえば if() ステートメントでは到達できないことがあります。

      ps_undefined_var_if_statement.png
    • 現在のファイルの外で変数の定義を検索します : 選択した場合、現在のファイルに include または require ステートメントがなく、プロジェクトで変数の定義が見つからない場合にのみ、IDE はグローバル変数を未定義として報告します。

      それ以外の場合、選択されていなければ、IDE は現在のファイルでのみ変数の定義を検索し、include または require ステートメントがあっても無視します。

関連ページ:

文法

Grazie Lite プラグインを有効にするこの機能は、デフォルトで PhpStorm にバンドルされて有効になっている Grazie Lite プラグインに依存しています。関連する機能が利用できない場合は、プラグインを無効にしていないことを確認してください。を押して設定を開き、を選択します。インストール済みタブを開き、Grazie Lite プラグインを見つけて、プラグイン名の横にあるチェックボックスを選択します。PhpStorm は、プロジェクトの README.md などのテキストファイルの文法を...

スペルチェック

PhpStorm は、識別子名、文字列リテラル、コメント、マークダウンファイル、コミットメッセージのスペルエラーを探します。この目的のために、PhpStorm は専用のタイポインスペクションを提供しており、これはデフォルトで有効になっています。スペルミスを修正するタイポインスペクションでハイライトされている単語にキャレットを置きます。使用可能なアクションを表示するには、を押すか、キャレットの左側にあるをクリックします。スペルを修正するための提案された方法の 1 つを選択します。文字列リテラルと...

インスペクションを実行する

PhpStorm は、エディターで開かれたファイル内のコードを分析し、入力時に問題のあるコードをハイライトします。さらに、選択したファイル範囲に対して必要なインスペクションまたは一連のインスペクションを手動で実行できます。この場合、ファイル内で検出されたすべての問題に関する包括的なレポートが得られます。現在のファイルの即時分析:IDE は継続的にコードをチェックし、問題を検索します。エディターの右上隅にあるウィジェットには、現在のファイルで検出された各重大度の問題の数が表示されます。ウィジェッ...

インスペクションの無効化と有効化

いくつかのインスペクションは現在見たくない問題を報告するかもしれません。この場合、無効にしたり抑制したりできます。インスペクションを無効にする:インスペクションを使用不可にすると、無効になります。これは、このインスペクションが検出するように設計されているという問題について、コード分析エンジンがプロジェクトファイルの検索を停止することを意味します。インスペクションを無効にすると、現在のインスペクションプロファイルで無効になります。他のプロファイルでは有効のままです。PhpStorm のほとんどの...

プロファイルを構成する

インスペクションプロファイルは、有効なインスペクション、これらのインスペクションが分析するファイルのスコープ、およびインスペクション重大度設定に関する情報を保持します。PhpStorm には、2 種類のプロファイルがあります。プロファイル IDE に保管は、PhpStorm 構成ディレクトリの inspection フォルダーに保存され、すべてのプロジェクトで使用できます。プロジェクトにコピーオプションを使用して、IDE プロファイルを現在のプロジェクトにコピーできます。プロファイルプロジェクトに保管は...