PhpStorm 2024.1 ヘルプ

Twig テンプレートのサポート

Twig テンプレートへの言語インジェクション

Twig テンプレートを使用する場合、テンプレートブロック内にコードフラグメントを挿入できます。 PhpStorm は、そのコードフラグメントを編集するための包括的な言語支援を提供します。

  1. 言語を挿入したいテンプレートブロックの中にキャレットを置き、Alt+Enter を押すか、the Intention action button をクリックします。

  2. 言語または参照の挿入を選択して、ポップアップメニューからインジェクションしたい言語を選択します。

    Inject code in a Twig template

JavaScript を Twig テンプレートブロックに自動的にインジェクションする

PhpStorm は、定義された挿入ルールに基づいて、Twig テンプレートブロックにコードを自動的に挿入できます。デフォルトでは、JavaScript コードを自動的に挿入するためのルールを利用できます。

  • Twig テンプレートで、以下のいずれかを実行します。

    • 次のように javascript という名前のブロックを追加します。

      {% block javascript %} //injected JavaScript code {% endblock %}
    • 次のようにカスタム script ブロックを追加します。

      {% script %} //injected JavaScript code {% endscript %}

    PhpStorm は自動的に JavaScript をテンプレートブロックに挿入します。

    Automatically inject JavaScript code in Twig a template

Twig 構文のカスタマイズ

場合によっては、Twig 構文をカスタマイズする必要があります。これは、たとえば、AngularJS などの他のテンプレート言語との衝突を回避できます。

  1. コードで、Twig のドキュメント(英語)に従って Twig 構文をカスタマイズします。

  2. この構文を正しく認識できるように、PhpStorm で対応する調整を行います。

    設定ダイアログ (Ctrl+Alt+S) で、PHP | Twig に移動し、TagCommentVariable ブロックに使用する目的の値を入力します。

    Custom Twig Syntax

Twig テンプレートのデバッグ

通常の PHP ファイルと同じ方法で Twig テンプレートをデバッグできます。

開始する前に、\Twig\Environment(英語) インスタンスで次のオプションが設定されていることを確認してください。

debug: true auto_reload: true

Twig デバッグを有効にする

  1. 設定ダイアログ (Ctrl+Alt+S) で、PHP | デバッグ | テンプレートに移動し、Twig デバッグ領域を展開します。

  2. キャッシュパスフィールドに、Twig コンパイル済みテンプレートのキャッシュ(英語)フォルダーへの絶対パスを入力します。パスを手動で入力するか、the Browse button をクリックして、開いたダイアログで関連するフォルダーを選択します。デフォルトでは、コンパイルされた Twig テンプレートは、プロジェクト内の var/cache/{environment}/twig フォルダーに保管されます。ここで、{environment} は、devprod などの構成環境を指定(英語)します。

デバッグセッションを開始する

Ultimate デバッグガイドの説明に従ってデバッグセッションを開始します。最も簡単で推奨される方法はゼロコンフィギュレーションデバッグを使うことです。

  1. ブラウザーに適したブラウザー拡張機能を選択してインストールします。

  2. PhpStorm ツールバーで、the Start Listening for PHP Debug Connections button を切り替えて受信 PHP デバッグ接続の待機を開始するか、メインメニューから実行 | PHP デバッグ接続のリッスンを開始を選択します。

  3. コードにブレークポイントを設定します。

  4. ブラウザーの拡張機能を使用して、ブラウザーでデバッグセッションを開始します。

  5. デバッグセッション中に、プログラムの状態を確認します。変数値の確認、式の評価、プログラムのステップ実行などを行います。

デバッグセッション中にテンプレートのブレークポイントに到達できない場合、PhpStorm は警告を出します。テンプレートの行がコンパイル済み PHP ファイルのどの行にもマップされていない場合に起こります。

Unreachable breakpoint in a Twig template

関連ページ:

Twig テンプレート

一般的な symfony テンプレートのサポートに加えて、Symfony のサポートプラグインは補完、ナビゲーション、Twig テンプレート言語に固有のコードインスペクションを提供する Twig テンプレートのコード補完:エディターでを押して、次のいずれかの場合にコード補完を呼び出します。どの TWIG ファイルでも適切な機能のテンプレートとブロックを提供します。自己定義またはサードパーティーからインストールされた拡張機能、フィルターおよびマクロを提供します。個々のアセットと完全なバンドルを提供しま...

AngularJS

Angular 1 とも呼ばれる AngularJS は、シングルページ Web アプリケーションを開発するためのフレームワークです。PhpStorm は、あらかじめ定義されたカスタムディレクティブとコントローラー名とアプリケーション名のための AngularJS 対応の補完オプションと、中括弧式内のデータバインディングのコードインサイトを提案します。組み込みの AngularJS ライブテンプレートを使用して、HTML のコントローラー名と JavaScript の定義名の間、またはまたはとテンプレ...

PhpStorm を使用したデバッグ

クイックスタート:以下は、ローカルまたはリモート Web サーバー上で実行される PHP アプリケーションをデバッグするために PhpStorm と Xdebug 3 を使用するためのクイックスタートガイドです。PHP テストのデバッグや SSH 経由のリモートデバッグなどの他のデバッグシナリオについては、デバッグシナリオを参照してください。1. Xdebug をインストールする Xdebug デバッグエンジンは PHP の拡張機能であるため、アプリケーションが実行されるローカルまたはリモート...

ゼロコンフィギュレーションデバッグ

ゼロコンフィギュレーションデバッグの場合、デバッグ構成を作成する必要はありません。代わりに、PHP アプリケーションの開始ページをブラウザーで手動で開き、ブラウザーからデバッグエンジンをアクティブにし、PhpStorm は受信デバッガー接続を待機します。デバッグセッションを開始する:PhpStorm は、最も人気のある 2 つのツール、Xdebug と Zend デバッガーによるデバッグをサポートしています。これらのツールは、互いにブロックし合うため、同時に使用することはできません。この問題を回避...

ブラウザーのデバッグ拡張機能

デバッグを開始するには、まずサーバー上でデバッガーエンジンをアクティブにする必要があります。これを行うには、特別なまたはパラメーターを設定する必要があります (詳細については、Xdebug および Zend デバッガーの公式ドキュメントを参照してください)。手動で行うこともできますが、ワンクリックでデバッガーを有効にできるブラウザー拡張機能を使用する方が便利です。次の表に、使用可能なデバッグ拡張機能を示します。Xdebug ヘルパー Xdebug ヘルパーまたは Xdebug-extPhpStorm ブ...

ブレークポイント

ブレークポイントは、特定のポイントでプログラムの実行を一時停止する特別なマーカーです。これにより、プログラムの状態と動作を調べることができます。ブレークポイントは、たとえば、特定のコード行に到達したときにプログラムを一時停止するなどの単純なものから、追加の条件をチェックしたり、ログに書き込んだりするなどのより複雑なロジックを含むものまであります。ブレークポイントは、一度設定すると、一時的なブレークポイントを除き、明示的に削除するまでプロジェクト内に残ります。ブレークポイントの種類:PhpSto