PHP HTTP リクエストをデバッグする
アプリケーション全体のデバッグに加えて、個別の HTTP リクエストをデバッグできます。 複数の手順でアクセスされる特定のページに実際に関心があるものの、何らかの理由でそのページをデバッグの開始ページとして指定できない場合に便利です。たとえば、特定のデータを持ってこのページに「到達」する必要がある場合です。
PhpStorm で PHP HTTP リクエストをデバッグするには、次の方法を使用できます。
推奨される方法である、 コードエディターの HTTP クライアント経由でリクエストを作成してデバッグします。
PHP HTTP リクエストの実行構成を使用します。 構成設定に基づいて、PhpStorm は実行要求を作成します。
デバッグエンジンを準備する
PhpStorm は、最も人気のある 2 つのツール、 Xdebug(英語) と Zend デバッガー(英語)によるデバッグをサポートしています。 これらのツールは、互いにブロックし合うため、同時に使用することはできません。 この問題を回避するには、 Xdebug を構成する および Zend デバッガーの構成 に従って、関連する PHP インタープリターの php.ini ファイルを更新する必要があります。
エディターでアクティブな php.ini ファイルを開きます:
設定 ダイアログ (Ctrl+Alt+S) で、 PHP をクリックします。
表示される PHP ページで、 CLI インタープリター フィールドの横にある
をクリックします。
開いている CLI インタープリター ダイアログで、 構成ファイル 読み取り専用フィールドにアクティブな php.ini ファイルへのパスが表示されます。 Open in Editor をクリックします。
ブレークポイントを設定する
ブレークポイントは 、デバッグセッション中にアクションをトリガーするために使用されるソースコードマーカーです。 通常、ブレークポイントを設定する目的は、プログラムの実行を一時停止して、プログラムデータを調査できるようにすることです。 ただし、PhpStorm は、さまざまなアクションのトリガーとしてブレークポイントを使用できます。 ブレークポイントは、デバッグプロセス中にいつでも設定できます。 ブレークポイントはソースファイルに直接影響しませんが、ブレークポイントとその設定は PhpStorm プロジェクトとともに保存されるため、デバッグセッション間で再利用できます。
キャレットをソースコードの目的の行に配置します。
ブレークポイントは、 php 、 html 、その他のタイプのファイル内の PHP コンテキストで設定できます。 行ブレークポイントは、実行可能行にのみ設定できますが、コメント、宣言、空の行には設定できません。
以下のいずれか 1 つを実行します:
ブレークポイントを切り替えるラインのガター領域をクリックします。
に進みます。
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 リクエスト ダイアログが開きます。
構成名を指定します。
Server リストで、アプリケーションが実行される Web サーバーと対話するためのデバッグサーバー構成を指定します。 既存の構成の 1 つを選択するか、 参照
をクリックして、 PHP デバッグサーバー構成を作成する 説明に従って開く サーバーダイアログでデバッグサーバー構成を定義します。
URL フィールドで、デバッグ要求の
host要素を補完します。 デバッグサーバー構成で指定されたホストからの相対パスを入力します。 入力すると、PhpStorm はその場で URL アドレスを作成し、フィールドに表示します。ターゲットページにデータを移動するかどうかを指定します。 リクエストメソッド リストから、関連する依頼タイプを選択します。
データを持たずにページにアクセスするには、 GET を選択します。
変数に保存されたデータを含むページにアクセスするには、 POST を選択して リクエスト本体 フィールドに関連する変数を入力します。
デフォルトでは、明示的に指定されていない場合、リクエストのエンコーディングに プロジェクトエンコーディング が使用されます。例:
header('Content-type: text/html;charset=utf-8');プロジェクトのエンコーディングは、 設定 ダイアログ (Ctrl+Alt+S) の ファイルエンコーディング ページで指定されます。
クエリ フィールドに、要求の照会文字列を入力します。 この文字列は ? シンボルの後のリクエストに追加されます。
準備ができたら OK をクリックします。
デバッグセッションを開始し、中断されたプログラムを調べる
デバッグを開始するには、ツールバーの デバッグ ボタン
をクリックします。
デバッガーが最初のブレークポイントに到達して一時停止したら、 フレームを分析してアプリケーションを調べます。 フレームはアクティブなメソッドまたは関数の呼び出しに対応し、呼び出されたメソッドまたは関数のローカル変数、その引数、式の評価を可能にするコードコンテキストを格納します。 現在アクティブなフレームはすべて デバッグツールウィンドウの フレーム ペインに表示され、フレームを切り替えて、そこに保存されている情報を 変数 および ウォッチ ペインで分析できます。 詳細については、「中断されたプログラムを調べる 」セクションを参照してください。
プログラムの実行を継続し、再び中断されるとすぐにそのフレームを調べます。
プログラムの実行を手動で制御するには、 実行 メニューまたはツールバーボタンのコマンド(   F7、   Shift+F8、   F8 など)を使用してコードをステップ実行します。 詳細については、 プログラムのステップスルー を参照してください。
プログラムを自動的に次のブレークポイントまで実行させるには、 を選択するか F9 を押してセッションを再開します。