PhpStorm 2024.1 ヘルプ

コードの生成

PhpStorm は、一般的なコード構造と繰り返し要素を生成する複数の方法を提供し、生産性の向上に役立ちます。これらは、新しいファイルを作成するときに使用されるファイルテンプレート、コンテキスト、さまざまなラッパー、文字の自動ペアリングに基づいて異なる方法で適用されるカスタムまたは事前定義されたライブテンプレートのいずれかです。

さらに、PhpStorm はコード補完および Emmet のサポートを提供します。

コード | 生成 Alt+Insert に移動して、生成できる利用可能な構成を含むポップアップメニューを開きます。

コンストラクターを生成

PhpStorm は、対応する引数の値を使用して特定のクラスプロパティを初期化するコンストラクターを生成できます。

クラスのコンストラクターを生成する

  1. メインメニューで、コードに移動し、生成 (Alt+Insert) を選択します。

  2. 生成ポップアップで、コンストラクターをクリックします。

  3. クラスにフィールドが含まれている場合は、コンストラクターで初期化するフィールドを選択し、OK をクリックします。

次のコードは、クラスのコンストラクターを生成した結果を示しています。

class MyClass { public $field; /** * MyClass constructor. * @param $field */ public function __construct($field) { $this->field = $field; } }

getter および setter の生成

PhpStorm は、クラス内のフィールド用のアクセサーおよびミューテーターメソッド(getter および setter)を生成できます。生成されたメソッドには引数が 1 つしかありません。

PHP コンテキストでは、getter および setter は PHP Getter/Setter/Fluent setter ファイルテンプレートを使用して生成されます。デフォルトでは、これらのテンプレートで指定されているように、setter は set プレフィックスで生成され、getter は推論されたプロパティ型 boolean または non-boolean に従って is または get プレフィックスで生成されます。プレフィックスは、デフォルトの getter テンプレートの ${GET_OR_IS} 変数の値です。テンプレートはファイルおよびコードテンプレートコードタブで設定されます。

  1. メインメニューで、コードに移動し、生成 (Alt+Insert) を選択します。

  2. 生成ポップアップで、次のいずれかをクリックします。

    • クラスプロパティの現在の値を取得するためのアクセサーメソッドを生成する Getter

    • クラスプロパティの値を設定するためのミューテーターメソッドを生成する Setter

    • getter と setter を使用してアクセサーメソッドとミューテータメソッドの両方を生成します。

  3. プロパティの選択ダイアログで、getter および setter を生成するフィールドを選択し、コード生成構成を指定します。

    Choose Properties
    • Fluent な setter : チェックボックスの選択を解除すると、流暢な setter の作成がスキップされ、さらに現在のクラスへの $this 参照が返されます。次の例を考えてみましょう。

      class Example { public $foo; public function set_foo($foo): void { $this->foo = $foo; } }
      class Example { public $foo; public function set_foo($foo) { $this->foo = $foo; return $this; } }
    • PHPDoc を追加 : チェックボックスをオフにすると、自動生成された PHPDoc ブロックのコードスニペットへの追加がスキップされます。生成された PHPDoc タグの範囲を変更するには、ラジオボタンを使用します。

    • 構成 : クリックして、生成された getter および setter の順序と命名スキームを構成します。

次のコードは、1 つのフィールド var を持つクラスの getter および setter メソッドを生成した結果を示しています。

class MyClass { /** * @return mixed */ public function getVar() { return $this->var; } /** * @param mixed $var */ public function setVar($var): void { $this->var = $var; } public $var; }

関連ページ:

ファイルテンプレート

ファイルテンプレートは、プロジェクトツリーのコンテキストメニューのメニューまたは新規セクションを使用して作成する新しいファイルの既定の内容の仕様です。作成するファイルの種類に応じて、テンプレートは、その種類のすべてのファイルに期待される初期コードとフォーマットを提供します (業界または言語の標準、企業ポリシー、その他の理由に従って)。PhpStorm は、新しいファイルを作成するときに提案される、サポートされているすべてのファイルタイプの定義済みテンプレートを提供します。ファイルテンプレートの管...

コード補完

このセクションでは、コーディングプロセスのスピードアップを可能にするコンテキスト対応コード補完のさまざまなテクニックについて説明します。基本補完:基本コード補完は、可視性スコープ内のクラス、メソッド、キーワードの名前を完成させるのに役立ちます。コード補完を呼び出すと、PhpStorm はコンテキストを分析し、現在のキャレット位置から到達可能な選択肢を提案します (提案にはライブテンプレートも含まれます)。基本コード補完がフィールド、パラメーター、変数宣言の一部に適用されている場合、PhpSto...

Emmet

Emmet ツールキットは、HTML、CSS、JSX によるコーディングを強化します。PhpStorm を移動せずに Emmet コードテンプレートを使用できます。テンプレートを正しいマークアップに展開するには、その略語を入力してを押します。を別のキーに置き換えるには、「略語拡張キーを構成する」を参照してください。例: HTML ファイルでと入力し、を押して 3 × 2 テーブルのスタブを取得します。<table> <tr> <td></td>...

自動インポート

現在のファイルの外部で定義されている PHP クラスを参照すると、PhpStorm はそのクラス定義を見つけて、次のいずれかを実行できます。クラスが定義されている名前空間を含む、完全修飾クラス名を自動的に補完します。短いクラス名を自動的に補完させ、クラスが定義されている名前空間をインポートします。クイックフィックスを使用してネームスペースを手動でインポートします。ステートメントがインポートセクションに追加されますが、キャレットは現在の位置から移動せず、現在の編集セッションは中断されません。この機...