IntelliJ IDEA 2024.3 ヘルプ

PHP リファレンス

このノードのページとすべてのページは、PHP プラグインが有効になっている場合にのみ使用できます。PHP プラグインは IntelliJ IDEA にバンドルされていませんが、JetBrains マーケットプレイスからプラグインをインストールするに従って、設定 | プラグインページのタブマーケットプレースにインストールできます。

このページを使用して、使用可能な PHP インタープリターの 1 つを選択して、プロジェクトでの PHP 開発および単体テストのサポートを構成します。

項目

ツールチップ /

ショートカット

説明

PHP 言語レベル

このリストでは、コーディング支援を受ける PHP 機能の範囲を指定します。各機能スコープは、この機能をサポートする PHP バージョンに関連付けられています。現在、PHP 5.3PHP 5.4PHP 5.5PHP 5.6PHP 7PHP 7.1PHP 7.2PHP 7.3PHP 7.4PHP 8.0PHP 8.1PHP 8.2 レベルがサポートされています。詳細については、「サポートされている PHP バージョン」を参照してください。

プロジェクトで使用される PHP バージョンと IntelliJ IDEA で構成された PHP 言語レベルの間に強制的な相関関係はありません。各インタープリターの言語バージョンは自動的に検出されますが、さまざまな言語レベルに対応するコーディング支援を提供するように IntelliJ IDEA に指示することもできます。ただし、指定された言語レベルでサポートされていないコード構成を使用しようとすると、IntelliJ IDEA は PHP <version> に切り替えます クイックフィックスを提案します。

既存のプロジェクト開くと、IntelliJ IDEA は使用されている言語機能についてプロジェクトを分析し、適切な言語レベルを自動的に設定します。

CLI インタープリター

このリストで、現在のプロジェクトでデフォルトで使用する PHP インタープリターを選択します。リストには、現在構成されているすべてのローカル PHP インタープリターとリモート PHP インタープリターが含まれます。詳細については、ローカル PHP インタープリターを構成するおよびリモート PHP インタープリターの構成を参照してください。

the Browse button

Shift+Enter

CLI インタープリターリストの横にあるこのボタンをクリックして、開く CLI インタープリターダイアログで新しい IntelliJ IDEA 全体の PHP インストール構成を作成します。

詳細については、ローカル PHP インタープリターを構成するおよびリモート PHP インタープリターの構成を参照してください。

パスマッピング

SFTP、Vagrant、Docker、WSL 経由でアクセス可能なリモートインタープリターを構成する場合、この読み取り専用フィールドには、対応するデプロイ構成、VagrantfileDockerfile から取得されたパスマッピングが表示されます。これらのマッピングは読み取り専用です。

カスタムマッピングを提供するには、フィールドの横にある the Browse button をクリックして、表示されるプロジェクトパスマッピングの編集ダイアログで指定します。

  • カスタムマッピングを追加するには、the Add button をクリックして、プロジェクト内のパスとリモートランタイム環境の対応するパスをそれぞれローカルパスフィールドとリモートパスフィールドに指定します。手動でパスを入力するか、the Browse button をクリックして表示されるダイアログで関連ファイルまたはフォルダーを選択します。

  • カスタムマッピングを削除するには、リスト内でカスタムマッピングを選択し、the Remove button をクリックします。

インクルードパスタブ

この領域には、設定されたインクルードパスのリストが表示されます。インクルードパスは、ライブラリを保持するために使用されます。つまり、ファイルパスを引数として使用する一部の関数 / メソッド (例: require() または include()) で補完および参照解決に使用されるサードパーティコードです。

  • Add および Remove を使用してフォルダーパスを追加および削除します。

  • フォルダーを選択し、「 除外」をクリックして、このフォルダーの内容をインデックス付けから除外します。

「PHP ランタイム」タブ

この領域には、利用可能な PHP スタブ(英語)が一覧表示されます。これらは、アノテーション付きの関数、メソッド、クラスのシグネチャー、定数定義などを含む、通常の構文的に正しい PHP ファイルです。PHP スタブが IntelliJ IDEA の内部知識に追加され、すべての標準 PHP ライブラリ(英語)コンポーネントおよび一般的な拡張機能に対するコーディング支援が強化されています。

  • 対応するスタブを有効または無効にするには、各項目の横にあるチェックボックスを使用します。

  • 現在構成されている CLI インタープリター用にロードされている拡張機能のセットと一致するスタブのセットをロードするには、「インタープリターによる拡張機能の同期」ボタンをクリックします。インタープリターの構成の詳細については、「ローカル PHP インタープリターを構成するおよびリモート PHP インタープリターの構成」を参照してください。

プロジェクトツールウィンドウでは、現在ロードされているスタブが外部ライブラリノードに表示されます。

詳細設定エリア

必要に応じて、IntelliJ IDEA で使用されるカスタム PHP スタブのセットをロードできます。デフォルトスタブパスフィールドの横にある the Browse button をクリックし、開いたダイアログでスタブフォルダーの場所を指定します。このようにして、追加の IntelliJ IDEA スタブをロードしたり、バンドルされたスタブをオーバーライドしたりできます。

PHP スタブは Composer パッケージ(英語)として使用できるため、サードパーティパッケージの依存関係として宣言およびインストールできます。この場合、プロジェクト内の vendor/jetbrains/phpstorm-stubs フォルダーに保存されます。

Composer パッケージスタブと IntelliJ IDEA バンドルスタブ間の競合を防ぐには、次のいずれかを実行します。

  • プロジェクトで Composer パッケージスタブを使用するには、デフォルトスタブパスフィールドにそれらの場所へのパスを明示的に指定します。

  • IntelliJ IDEA にバンドルされている PHP スタブを使用するには、デフォルトスタブパスフィールドがクリアされ、vendor/jetbrains/phpstorm-stubs フォルダーがプロジェクトから除外されていることを確認してください。

    • 設定ダイアログ (Ctrl+Alt+S) の言語 & フレームワーク | PHP | Composer ページでパッケージをライブラリとして追加するオプションが有効になっている場合、IntelliJ IDEA は自動的に vendor/jetbrains/phpstorm-stubs フォルダーを除外としてマークします。デフォルトでは、このオプションは有効になっています。

    • パッケージをライブラリとして追加するが無効になっている場合は、スタブパッケージフォルダーを手動で除外できます。これを行うには、プロジェクトビュー

      vendor/jetbrains/phpstorm-stubs フォルダーに移動し、コンテキストメニューからディレクトリをマーク | 除外を選択します。

「分析」タブ

特定の IntelliJ IDEA の動作を設定するには、このタブを使用しインスペクションを。

例外分析

このセクションを使用して、例外解析を構成します。これにより、未処理の例外冗長な catch 節欠落した @throws タグ冗長な @throws タグインスペクションの動作が変更されます。

項目

ツールチップ /

ショートカット

説明

呼び出しツリー分析の深さ

このリストを使用して、目的の例外分析の深さレベルを設定します。デフォルトでは、1 が選択されています。その場合、IntelliJ IDEA は、例外をスローした親メソッドと、それを直接呼び出すメソッドについて未処理の例外を報告します。大きい値を選択すると、呼び出し階層をさらに深く掘り下げることができます。

0 が選択されている場合、例外解析は親メソッドに限定されます。

定数パラメーターを使用して呼び出しをスキップする

例外分析中に IntelliJ IDEA がインスタンス作成式で特定のメソッド呼び出しをスキップするようにするには、このチェックボックスを選択します。

  • パラメーターとして文字列または定数のみを持つメソッド呼び出しはスキップされます。

    $date = new DateTime('2019-01-01');
  • 変数、整数、配列などをパラメーターとして持つメソッド呼び出しはスキップされません。

    $date = new DateTime($myDate);

未チェックの例外

このリストを使用して、IntelliJ IDEA によってチェックされていないものとして処理される例外を指定します。このような例外は、例外解析中にスキップされます。

Add class

Alt+Insert

このボタンをクリックすると、クラスが未チェックの例外リストに追加されます。表示されるクラスの選択ダイアログで、名前で検索タブまたはプロジェクトタブを使用して目的のクラスを見つけます。

Remove button

Delete

選択したクラスを未チェックの例外リストから削除するには、このボタンをクリックします。

カスタムフォーマット関数

このセクションを使用して、カスタム文字列フォーマット関数をフォーマット関数パラメーターの不一致インスペクション分析スコープに含めます。このインスペクションは、フォーマット関数パラメーターと仕様変換エントリ間の不一致を報告し、デフォルトで標準の PHPprintf(英語) および sprintf(英語) 関数の使用箇所を分析します。

項目

ツールチップ /

ショートカット

説明

Add button

Alt+Insert

このボタンをクリックして、新しい関数レコードをカスタム形式関数リストに追加します。開いたカスタムフォーマット関数の追加ダイアログで、クラスメソッドまたは関数の名前を指定し、フォーマットテンプレートが存在する引数のインデックスを指定します。

Remove button

Delete

カスタム形式関数リストから関数レコードを削除するには、このボタンをクリックします。

Edit button

Enter

このボタンをクリックして、選択した機能レコードを編集します。

インクルード分析

このセクションを使用して、$_SERVER['DOCUMENT_ROOT'] 式が解決する必要があるカスタムフォルダーを定義し、解決できない include インスペクションの動作を変更します。

指定されたパスは、ファイルパスを引数として使用する関数 / メソッド用にコード補完で使用されます(たとえば、require() または include())。パスが空白のままの場合、コード補完はプロジェクトルートからの相対パスを提案します。

一般的に、この設定は、Web サーバー設定で定義されたドキュメントルートフォルダーが IntelliJ IDEA プロジェクトのルートフォルダーと異なる場合に変更する必要があります。

項目

説明

$SERVER['DOCUMENTROOT'

このフィールドに、$_SERVER['DOCUMENT_ROOT'] 式が解決するフォルダーを指定します。

デフォルト値は空白です: この場合、$_SERVER['DOCUMENT_ROOT'] 式はプロジェクトのルートフォルダーに解決されます。それを別のフォルダーに解決するには、プロジェクトルートからの相対パスを入力するか、Open from disk をクリックして開きたいダイアログボックスで目的のフォルダーを選択します。

関連ページ:

プラグインのインストール

プラグインは IntelliJ IDEA のコア機能を拡張します。例: プラグインをインストールして、次の機能を取得します。バージョン管理システム、課題追跡システム、ビルド管理サーバー、その他のツールとの統合。さまざまな言語とフレームワークのコーディング支援サポート。ショートカットのヒント、ライブプレビュー、ファイルウォッチャーなど。新しいプログラミング言語を学ぶのに役立つコーディング演習。プラグイン設定を開くを押して設定を開き、を選択します。マーケットプレースタブを使用して、JetBrains...

結果の取得と問題の解決

インスペクションがあなたのコードに問題を検出した場合、すぐにエディターで修正を適用することができます。ハイライトされたコード部分にキャレットを置き、を押します。IntelliJ IDEA では、一部のインスペクションのクイックフィックスの横に対話型プレビューが表示されます。を押すと、このプレビューを非表示にしたり表示したりできます。問題ツールウィンドウで修正を適用する:インスペクションを手動で起動した場合は、解析が終了した後に自動的に開く問題ツールウィンドウで結果を調べることができます。検

ユーザーインターフェース

IntelliJ IDEA でプロジェクトを開くと、デフォルトのユーザーインターフェースは次のようになります。ナビゲーションバー、プロジェクトツールウィンドウ、エディター、ポップアップメニュー、コンテキストメニュー、ステータスバー、ツールウィンドウバー、ツールバー、ガター、プラグインのセット、IntelliJ IDEA エディション、および構成設定によっては、IDE の外観と動作が異なる場合があります。ナビゲーションバー:フォーカス: 表示 / 非表示: ナビゲーションバーはプロジェクトビューの代...

Composer

このページでは、専用のユーザーインターフェースを介して Composer 依存関係マネージャーコマンドの実行を有効にし、PhpStorm プロジェクトのデフォルト composer.json を指定します。composer.json のパスこのフィールドでは、プロジェクトのデフォルトの Composer ファイルとして使用する composer.json の場所を指定します。メインメニューのから呼び出されるすべての Composer コマンドは、この構成ファイルの設定に従って実行されます。1 つの Ph...

ローカル PHP インタープリターを構成する

ローカル PHP インタープリターは、リモートホスト、Docker コンテナー、または Vagrant 仮想環境にインストールされるリモート PHP インタープリターとは異なり、コンピューターにインストールされる PHP エンジンです。ローカル PHP インタープリターを構成するを押して設定を開き、を選択します。表示される PHP ページで、CLI インタープリターリストの横にあるをクリックします。表示される CLI インタープリターダイアログで、左側のペインのをクリックして、ポップアップメニューか...

リモート PHP インタープリターの構成

リモート PHP インタープリターは、リモートホストまたは仮想環境にインストールされる PHP エンジンです。リモート PHP インタープリターという用語は、ローカルコンピューターにインストールされるローカル PHP インタープリターの反対です。PhpStorm では、Docker コンテナー内、Docker Compose、Vagrant、WSL 経由で、SSH 経由でリモート PHP インタープリターへのアクセスを構成できます。SSH 構成タイプを使用すると、リモートホスト上のサーバーにインスト...