PHP HTTP リクエストをデバッグする
アプリケーション全体のデバッグに加え、個別に HTTP リクエストもデバッグできます。 何らかの理由でそのページをデバッグ開始ページに指定できず、特定のデータを持って複数のステップで特定ページにアクセスする必要がある場合などに便利です。
PhpStorm で PHP HTTP リクエストをデバッグするには、次のメソッドを利用できます:
リクエストを コードエディターの HTTP クライアント経由で作成およびデバッグします。これが推奨される方法です。
PHP HTTP リクエストの実行構成を使用します。 構成設定に基づいて、PhpStorm は実行用のリクエストを作成します。
デバッグエンジンを準備する
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 を押す。
コードエディターで HTTP クライアントを介してリクエストをデバッグする
組み込みの HTTP クライアントを使用すると、PhpStorm コードエディターから直接 HTTP リクエストを作成、実行、デバッグできます。
既存の HTTP リクエストファイルを開くか、新しく作成します。 ファイル メニューで 新規 をポイントし、 HTTP リクエスト をクリックします。
デバッグする必要があるクエリの HTTP リクエストを作成します。
リクエストにキャレットを置き、 Alt+Enter を押すか、エディターのガターで
をクリックします。 ポップアップメニューから PHP デバッグ <ホスト> を選択します。

環境が定義されている場合は、 PHP デバッグ ... を選択し、ポップアップメニューで環境を選択します。 選択した環境は、後でリクエストを実行またはデバッグするときにデフォルト環境として使用されます。

PhpStorm は
XDEBUG_SESSIONCookie をリクエストへ自動追加し、実行後に指定したブレークポイントで停止します。
リクエスト実行時、PhpStorm はそのリクエスト専用の一時的な HTTP リクエスト実行 / デバッグ構成を自動で作成します。 必要に応じて 永続的な実行 / デバッグ構成として保存するを使用できます。
タイプ PHP HTTP リクエストのデバッグ構成を作成する
PhpStorm は、この構成で指定された設定を PHP HTTP リクエストにまとめます。 エディターで HTTP クライアントを使用して HTTP リクエストをデバッグする方が、より便利で推奨される方法です。
次のいずれかを実行して 実行 / デバッグ構成ダイアログを開きます。
に進みます。
Alt+Shift+F10 を押してから 0 を押して 構成の編集 ダイアログを表示するか、ポップアップから構成を選択して F4 を押します。
ツールバーの
をクリックするか、 Insert を押します。 リストから PHP HTTP リクエスト 構成タイプを選択します。 PHP HTTP リクエストダイアログが開きます。
構成名を指定します。
サーバー リストで、アプリケーションが実行される Web サーバーと対話するためのデバッグサーバー構成を指定します。 既存の構成の 1 つを選択するか、 閲覧
をクリックして、 PHP デバッグサーバー構成を作成する 説明に従って開く サーバーダイアログでデバッグサーバー構成を定義します。
URL フィールドで、デバッグ要求の
共有セッションには、ホスト要素を補完します。 デバッグサーバー構成で指定されたホストからの相対パスを入力します。 入力すると、PhpStorm はその場で URL アドレスを作成し、そのフィールドの下に表示します。ターゲットページにデータを移動するかどうかを指定します。 リクエストメソッド リストから、関連する依頼タイプを選択します。
データを持たずにページにアクセスするには、 GET を選択します。
変数に保存されたデータを含むページにアクセスするには、 POST を選択して リクエスト本体 フィールドに関連する変数を入力します。
明示的に指定されていない場合、デフォルトでリクエストのエンコーディングには プロジェクトのエンコーディングが使用されます。例:
header('Content-type: text/html;charset=utf-8');Project Encoding は、 設定 ダイアログ(Ctrl+Alt+S )の File Encodings ページで指定されます。
クエリ フィールドに、要求の照会文字列を入力します。 この文字列は ? シンボルの後のリクエストに追加されます。
準備ができたら OK をクリックします。
デバッグセッションを開始し、中断されたプログラムを調べる
デバッグを開始するには、ツールバーの デバッグ ボタン
をクリックします。
デバッガーが最初のブレークポイントに到達して一時停止したら、 フレームを分析してアプリケーションを調べます。 フレームはアクティブなメソッドまたは関数の呼び出しに対応し、呼び出されたメソッドまたは関数のローカル変数、その引数、式の評価を可能にするコードコンテキストを格納します。 現在アクティブなすべてのフレームは デバッグツールウィンドウ の フレーム ペインに表示されており、フレームの切り替えや、その中に保存されている情報を 変数 および ウォッチ式 ペインで分析できます。 詳細については、「中断されたプログラムを調べる 」セクションを参照してください。
プログラムの実行を継続し、再び中断されるとすぐにそのフレームを調べます。
プログラムの実行を手動で制御するには、 実行 メニューまたはツールバーボタンのコマンド(   F7、   Shift+F8、   F8 など)を使用してコードをステップ実行します。 詳細については、 プログラムのステップスルー を参照してください。
プログラムを自動的に次のブレークポイントまで実行させるには、 を選択するか F9 を押してセッションを再開します。