PhpStorm 2019.3ヘルプ

プロジェクトでのPHP名前空間の構成

PhpStormには、プロジェクトルートフォルダーがパッケージおよび名前空間のルートでもあることを指定する構成可能な規則が付属しています。つまり、プロジェクトのルートフォルダーはデフォルトでソースとしてマークされ、そに作成されるすべてのディレクトリは個別のネームスペースと見なされます。これは、オートローディングスタンダードとも呼ばれるPSR-0(英語)に準拠しています。オートローディングスタンダードは、PHPのクラスと名前空間がディレクトリとファイル構造に一致すること、およびその逆を規定しています。

PSR-4(英語)によれば、どのディレクトリにも明示的に名前空間プレフィックスを割り当てることができます。このプロジェクト構造では、異なるPHPフレームワークのオートローダーが相互運用可能になります。

名前空間のルートを自動的に検出する

名前空間を持つファイルを少なくとも1つ含むプロジェクトを開くと、PhpStormは名前空間のルートを設定する命題を含むメッセージを表示します。

名前空間のルートがまだ設定されておらず、クラスを作成している場合、PhpStormは名前空間のルートを設定することを提案します。

メインメニューからコード | PSR-0 名前空間ルートの検出を選択してネームスペースルート検出をトリガすることもできます。開くディレクトリダイアログは、プロジェクトルートフォルダーのフォルダーをソースとマークされたプロジェクトルートフォルダーとともに表示します。これは、その中のすべてのネームスペースのルートであることを意味します。OKをクリックして設定を受け入れるか、または以下の説明に従って名前空間のルートを手動で設定します。

コンテンツ・ルート内のフォルダーの構成でのフォルダーのマーキングの詳細を参照してください。

手動で名前空間のルートを設定する

  1. 設定/環境設定ダイアログ Ctrl+Alt+Sで、ディレクトリに移動します。

  2. 開いているディレクトリページの右側のペインに、プロジェクトで設定されているすべてのコンテンツ・ルートが表示されます。原則として、現在のプロジェクトのルートフォルダーであるコンテンツ・ルートが1つあります。

    中央ペインには、選択したコンテンツ・ルートにあるすべてのフォルダーが表示されます。名前空間のルートとして扱うフォルダーを選択し、ソースをクリックします。

    PhpStormはそれぞれを名前空間のルートとして扱い、それらにあるファイルの名前空間のヒントを提供します。たとえば、ベンダフォルダーのすべてのサブフォルダーを名前空間のルートとしてマークすることができます。以下の例では、実際のアプリケーション用とベンダー用の2つの名前空間ルートがあります。

    ps_configure_namespace_roots.png
  3. PSR-4(英語)に従ってネームスペースプレフィックスを設定するには、関連するソースフォルダー(ネームスペースルート)の横にある the Edit properties button をクリックし、ルート・プロパティの編集ダイアログで使用するプレフィックスを指定します。自動的に生成されたコードにもプレフィックスを適用するには、生成されたソース用チェックボックスを選択します。

最終更新日: 2020年1月15日