PhpStorm 2024.3 ヘルプ

Zend デバッガーによるプロファイリング

対話式デバッグの他に、PhpStorm と Zend デバッガー(英語)の統合はプロファイリングもサポートします。PhpStorm は Zend デバッガーによって生成されたプロファイリングデータの視覚的表現を提供します。

Zend デバッガーでプロファイリングする前に、PHP 開発環境のコンポーネントをダウンロード、インストール、設定してください。通常、これらは PHP エンジン、Web サーバー、Zend デバッガーツールです。

Zend デバッガーでプロファイリングを有効にする

Zend デバッガーの構成

  1. Zend デバッガーツールをダウンロードしてインストールします。

  2. Zend デバッガーと PHP エンジンの統合

  3. PhpStorm と Xdebug を統合します

ブラウザーからプロファイラーを切り替える方法を構成する

To specify the GET/POST or COOKIE parameters:

  • 値を手動で指定します。

Zend デバッガーのプロファイリングデータを分析する

Zend デバッガープロファイラが有効になっていますと統合すると、PhpStorm はプロファイラスナップショットを視覚的に表示します。PhpStorm は、異なる基準に基づいてデータが表示される 4 つのビューを持つ別々のエディタータブを開きます。

Zend デバッガーでは、プロファイリングはゼロ構成デバッグセッション内でサポートされます。

ゼロ設定の開始 Zend デバッガーセッション

  1. ブックマークレットを生成してデバッガーを切り替えます。これらのブックマークレットは、ブラウザーのツールバーに表示されます。デバッガーのクッキーを制御し、デバッガーを有効または無効にします。

    1. ブラウザーの種類に応じて、次のいずれかを実行して、ブラウザーでブックマークツールバーを有効にします。

      • Firefox では、表示 | ツールバー | ブックマークツールバーを選択します。

      • Chrome では、ブックマーク | ブックマークバーを表示を選択します。

    2. Xdebug および Zend デバッガーのブックマークレットジェネレーターページを開き、デバッグエンジンの設定を確認して、生成をクリックします。リストされたデバッグ関連アクションのブックマークが生成されます。

    3. 生成されたリンクをブラウザーのブックマークツールバーにドラッグします。

  2. PhpStorm ツールバーまたはステータスバーの PHP のデバッグ接続を聞く開始ボタン start listening php debug connections を切り替えて、stop listening php debug connections に変更します。その後、PhpStorm は現在のプロジェクトで使用されているデバッグエンジンのポートのリッスンを開始します。デバッグポートは、設定ダイアログ (Ctrl+Alt+S) の PHP | デバッグページの PhpStorm レベルで設定されます。

  3. ブラウザーでアプリケーションの開始ページを開き、デバッガーを起動するブックマークを選択してブラウザーからデバッグエンジンをアクティブにし、現在のページ(アプリケーションの開始ページ)を再ロードしてから PhpStorm に戻ります。

    ゼロコンフィギュレーションデバッグセッションの確立は、ブレークポイントにヒットせずに失敗する場合があるため、スクリプトは中断されません。これは、パスマッピングが構成されていないか、誤って構成されている場合、またはブレークポイントを設定していない場合に発生する可能性があります。後者の場合、次のいずれかを実行できます。

    • 目的の実行可能コード行のガターをクリックしてブレークポイントを設定します。詳細については、ブレークポイントを参照してください。

    • 設定ダイアログ (Ctrl+Alt+S) で PHP | デバッグに移動し、外部接続領域で PHP スクリプトの最初の行で中断するチェックボックスを選択します。

    • メインメニューから実行 | PHP スクリプトの最初の行で中断するオプションを有効にします。

    スクリプトが中断されていない場合、PhpStorm に通知を表示させるには、設定ダイアログの PHP | デバッグページの詳細設定領域のデバッグセッションが一時停止せずに完了した場合に通知するチェックボックスを選択します。

  4. 開いたダイアログで、プロファイルへの受信接続を選択し、受諾をクリックします。Zend デバッガーからの受信接続ダイアログは、このホストからの接続を初めて受け入れるときに 1 回だけ表示されます。

    PhpStorm は、収集したプロファイリングデータを、別のエディタータブに、選択したプロファイラ出力ファイルの名前とともに表示します。

プロファイリングデータを調べる

蓄積されたプロファイリングデータを要求すると、PhpStorm は視覚化されたプレゼンテーションを別のエディタータブで開きます。このタブは、現在プロファイリング中のページを実装するファイルの名前に基づいており、複数のビューで構成されています。さまざまな分析基準に基づいてプロファイリングデータを分析するために、ビュー間を切り替えます。

  • 実行統計 : このタブを使用して、呼び出されたすべての関数の実行メトリクスに関する概要情報を調べます。

  • 呼び出しツリー : このタブを使用して、呼び出されたすべての関数の実行パスを調べます。

  • 呼び出し先 : このタブを使用して、呼び出しツリータブで選択した特定の関数の実行パスを調べます。

  • 呼び出し元 : このタブを使用して、呼び出しツリータブで選択した特定の関数を呼び出す可能性のあるすべてのパスを調べます。

メトリクス名

説明

時間

選択した関数と、この関数から呼び出されるすべての関数に費やした時間 (パーセント)。

自身時間

選択した関数に費やされた時間 (パーセント)。この関数から呼び出された関数に費やされた時間を割り引いたもの。

メモリ (B)

選択した関数およびこの関数から呼び出されるすべての関数によって消費されるメモリ量 (バイト単位)。

自分の記憶 (B)

選択した関数によって消費されるメモリ量 (バイト単位)。この関数から呼び出される関数によって消費されるメモリ量を差し引きます。

呼び出し

選択した関数が呼び出された回数。

関連ページ:

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

デバッグを開始する前に、Web アプリケーションまたは PHP CLI スクリプトが実行されるマシンにデバッグエンジンがインストールされ、適切に構成されていることを確認してください。PhpStorm は、最も人気のある 2 つのツール、Xdebug と Zend デバッガーによるデバッグをサポートしています。これらのツールは、互いにブロックし合うため、同時に使用することはできません。この問題を回避するには、Xdebug を構成するおよび Zend デバッガーの構成に従って、関連する PHP インタープ...

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

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

デバッグ

このページを使用して、Xdebug と Zend デバッガーの動作を設定します。事前構成この領域には、デバッガーのインストール、デバッガーのクッキーを制御してデバッグセッションを開始 / 停止するを実行するブックマークレットの生成、およびゼロコンフィギュレーションデバッグの起動に関する簡単なガイドラインが示されています。外部接続この領域で、PhpStorm がホストから受信した接続、デプロイサーバー構成として登録されていないポートを介した接続をどのように処理するかを指定します。未登録のサーバー構...

一般的な PHP デバッグの問題のトラブルシューティング

このセクションでは、PhpStorm のデバッグに関する一般的な問題の解決策と回避策のリストを提供します。PhpStorm デバッグログの収集:このセクションで問題が解決されない場合は、サポートエンジニアにお問い合わせください。デプロイログの提供を求められた場合は、指示に従ってログを収集してください。デバッグログを収集するメインメニューで選択します。開いているカスタムデバッグログ構成ダイアログで、発生している問題に応じて次の行を追加します。PHP のデバッグに関する問題:、OK をクリックし、...

ブレークポイント

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

Xdebug によるプロファイリング

対話型デバッグに加えて、IDE と Xdebug の統合により、プロファイリングもサポートされます。PhpStorm は、Xdebug によって生成されたプロファイリングスナップショットを視覚的に表現し、PHP アプリケーションが実行時間とメモリをどのように使用するかを調べるのに役立ちます。Xdebug を使用したプロファイリングのセットアップ:Xdebug をセットアップする Xdebug ツールをダウンロードしてインストールしてください。Xdebug と PHP エンジンの統合。PhpStorm...