PHP Web ページのデバッグ構成でデバッグする
このデバッグモードでは、PhpStorm がデバッグプロセスを完全に制御します。アプリケーションの起動、ブラウザーのオープン、および PHP Web ページ デバッグ構成に従ってデバッグエンジンを有効化します。
PHP Web ページデバッグ構成は、アプリケーションの開始ページにアクセスするための URL アドレス、開始ページを開くブラウザー、および使用する デバッグサーバー構成をPhpStormに指示します。
デバッグ中に PhpStorm が無視するスクリプトリクエストを指定することもできます。 この方法は、アプリケーションに AJAX を使用するスクリプトが含まれている場合に役立ちます。 Web ページの一部を「再ロード」する menu-ajax-script.php があるとします。 このスクリプトは正しく動作するため、デバッグする必要はありません。 ただし、このスクリプトはデバッグセッション中にも要求されます。 このスクリプトへの受信接続を無視するには、 menu-ajax-script.php スクリプトを スキップされたパスのリストに追加します。
デバッグエンジンを準備する
PhpStorm は、最も人気のあるツールである Xdebug と Zend Debugger でデバッグをサポートしています。 これらのツールは、互いにブロックし合うため、同時に使用することはできません。 この問題を回避するには、 Xdebug を構成する および Zend デバッガーの構成 に従って、関連する PHP インタープリターの php.ini ファイルを更新する必要があります。
エディターでアクティブな php.ini ファイルを開きます:
設定 ダイアログ (Ctrl+Alt+S) で、 PHP をクリックします。
表示される PHP ページで、 CLI インタープリター フィールドの横にある
をクリックします。
開いている CLI インタープリター ダイアログで、 構成ファイル 読み取り専用フィールドにアクティブな php.ini ファイルへのパスが表示されます。 エディターで開く をクリックします。
ブレークポイントを設定する。
ブレークポイントは 、デバッグセッション中にアクションをトリガーするために使用されるソースコードマーカーです。 通常、ブレークポイントを設定する目的は、プログラムの実行を一時停止して、プログラムデータを調査できるようにすることです。 ただし、PhpStorm はブレークポイントをさまざまなアクションのトリガーとして使用できます。 ブレークポイントは、デバッグプロセス中にいつでも設定できます。 ブレークポイントはソースファイルに直接影響しませんが、ブレークポイントとその設定は PhpStorm プロジェクトとともに保存されるため、デバッグセッション間で再利用できます。
キャレットをソースコードの目的の行に配置します。
ブレークポイントは、 php 、 html 、その他のタイプのファイル内の PHP コンテキストで設定できます。 行ブレークポイントは、実行可能行にのみ設定できますが、コメント、宣言、空の行には設定できません。
次のいずれかを実行します:
ブレークポイントを切り替えるラインのガター領域をクリックします。
に進みます。
Ctrl+F8 を押す。
PHP Web ページのデバッグ構成を作成する
次のいずれかを実行して 実行 / デバッグ構成ダイアログを開きます。
に進みます。
Alt+Shift+F10 を押してから 0 を押して 構成の編集 ダイアログを表示するか、ポップアップから構成を選択して F4 を押します。
ツールバーの
をクリックするか、 Insert を押します。 リストから PHP Web ページ 構成タイプを選択します。 PHP Web ページダイアログが開きます。
構成名を指定します。
サーバー リストから適切なデバッグサーバー構成を選択するか、 閲覧
をクリックします。 サーバー ダイアログで、 PHP デバッグサーバー構成を作成する に記載された説明に従ってデバッグサーバー構成を定義します。
開始 URL フィールドに、アプリケーションの開始ページを実装しているファイルへのサーバーパスを入力します。 サーバー構成ルートからの相対パスを指定します(サーバー構成ルートは、サーバー構成を通じてアクセス可能な ローカルまたは リモートサーバー上のファイルツリーで最上位のフォルダーです。 インプレースサーバーの場合は、プロジェクトルートです。 )。 下の読み取り専用フィールドには、アプリケーション開始ページの URL アドレスが表示されます。 入力内容に応じて、URL アドレスが動的に生成されます。
アプリケーションを開くブラウザーを指定します。 ブラウザー リストから構成済みブラウザーを選択するか、 閲覧
をクリックし、開いた ウェブブラウザーとプレビュー ダイアログで 別のブラウザーを指定します。
デバッグセッションを開始し、中断されたプログラムを調べる
デバッグを開始するには、ツールバーの デバッグ ボタン
をクリックします。
デバッガーが最初のブレークポイントに到達して一時停止したら、 フレームを分析してアプリケーションを調べます。 フレームはアクティブなメソッドまたは関数の呼び出しに対応し、呼び出されたメソッドまたは関数のローカル変数、その引数、式の評価を可能にするコードコンテキストを格納します。 現在アクティブなすべてのフレームは デバッグツールウィンドウ の フレーム ペインに表示されており、フレームの切り替えや、その中に保存されている情報を 変数 および ウォッチ式 ペインで分析できます。 詳細については、「中断されたプログラムを調べる 」セクションを参照してください。
プログラムの実行を継続し、再び中断されるとすぐにそのフレームを調べます。
プログラムの実行を手動で制御するには、 実行 メニューまたはツールバーボタンのコマンド(   F7、   Shift+F8、   F8 など)を使用してコードをステップ実行します。 詳細については、 プログラムのステップスルー を参照してください。
プログラムを自動的に次のブレークポイントまで実行させるには、 を選択するか F9 を押してセッションを再開します。
リクエストをスキップするスクリプトを指定
この方法は、アプリケーションに AJAX を使用するスクリプトが含まれている場合に役立ちます。 Web ページの一部を「再ロード」する menu-ajax-script.php があるとします。 このスクリプトは正しく動作するため、デバッグする必要はありません。 ただし、このスクリプトはデバッグセッション中にも要求されます。 このスクリプトへの受信接続を無視するには、 menu-ajax-script.php スクリプトを スキップされたパスのリストに追加します。
設定 ダイアログ(Ctrl+Alt+S )で に移動します。
開いた スキップするパス ページで、PhpStorm が受信接続を受けた場合に呼び出されないスクリプトやスクリプトを含むフォルダーの「無視リスト」を設定します。
リストに新しいエントリを追加するには、
をクリックするか Alt+Insert を押します。 次に
をクリックして表示されるダイアログで、接続をスキップするファイルまたはフォルダーを選択します。
リストからエントリを削除するには、それを選択して
をクリックするか Alt+Delete を押します。 スクリプトはリクエストを受け取ると実行されます。
スキップするスクリプトへのリクエストを受け取るたびに PhpStorm に通知させるには、 スキップされたパスについて通知する チェックボックスをオンにします。