PhpStorm 2020.2ヘルプ

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

ゼロコンフィギュレーションデバッグの場合、デバッグ構成を作成する必要はありません。代わりに、PHPアプリケーションの開始ページをブラウザで手動で開き、ブラウザからデバッグエンジンをアクティブにし、PhpStormは受信デバッガ接続を待機します。

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

デバッグを開始する前に、デバッグエンジンがインストールされ、適切に構成されていることを確認してください。PhpStormは、Xdebug(英語)Zend デバッガー(英語)の2つの最も一般的なツールを使用したデバッグをサポートしています。これらのツールは互いにブロックしているため、同時に使用できません。この問題を回避するには、Xdebugを構成するおよびZendデバッガーの構成に従って、php.iniファイルの対応するセクションを更新する必要があります。

ゼロ設定のデバッグセッションを開始するには、これらの一般的な手順を実行します。

デバッグエンジンのインストールを検証する

  • 以下のいずれかを行います。

    • コマンドラインで、php --version コマンドを実行します。出力には、インストールされている拡張機能の中にデバッグエンジンが表示されます。

      Xdebug extension installed
      Zend debugger extension installed
    • phpinfo(); 関数呼び出しを含むphpファイルを作成します。次に、このファイルをブラウザーで開きます。 phpinfo 出力には、デバッグエンジンのセクションが含まれている必要があります。

      Debugging engine installed
      Debugging engine installed

受信デバッグ接続のリッスンを有効にする

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

    Start listening to debugging connections

コードにブレークポイントを設定する

  • 次のいずれかを実行して、コードにブレークポイントを設定します。

    • ブレークポイントを切り替える行の左ガター領域をクリックします。

    • メインメニューで実行 | 行ブレークポイントの切り替えを選択します。

    • Ctrl+F8を押します。

    Set breakpoints

    または、PhpStormとの接続が確立されるとすぐにデバッガを停止させるには、実行 | PHP スクリプトの最初の行で中断するを選択します(最初のブレークポイントに達するまで自動的に実行するのではなく)。

サーバー上でデバッガを有効にする

  • ブラウザーからデバッグエンジンを開始および停止できるようにするには、特別な GET / POST または COOKIE パラメーターを設定する必要があります。php.ini設定ファイルで手動で行うか、利用可能なブラウザデバッグ拡張機能の 1つを使用できます。拡張機能を利用できないブラウザを使用している場合は、デバッガを起動 / デバッガを停止ブックマークレットを生成して、ブラウザのツールバーに追加できます。

    ブラウザでデバッグ拡張機能を有効にします:

    Xdebug helper in Chrome

    手動でパラメータを設定する方法の詳細については、Xdebugデバッガの起動(英語)およびZend デバッガーZend デバッガーのGETリクエストパラメータ(英語)を参照してください。

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

  1. ブラウザーでページを再ロードして、PhpStormに戻ります。<デバッグ・エンジン>からの受信接続 ダイアログで、PhpStormがWebサーバー上のリモートファイルをプロジェクトのローカルファイルにマップできるように、パスマッピングを選択します。デプロイ構成を定義している場合、PhpStormは、その構成で既に設定したパスに基づいてマッピングを構成することを提案します。

    Incoming debugger connection Xdebug
  2. ブレークポイントに達すると、デバッガは中断されます。これでアプリケーションを調べることができます。

    Application stopped at breakpoint
  3. プログラムの実行を継続し、再び中断されるとすぐにそのフレームを調べます。

    • プログラムの実行を手動で制御するには、 実行 メニューまたはツールバーボタン:ステップ・イン F7ステップ・アウト Shift+F8ステップ・オーバー F8などのコマンドを使用してコードをステップ実行します。詳細については、プログラムのステップ・スルーを参照してください。

    • プログラムを自動的に次のブレークポイントまで実行させるには、実行 | デバッグ・アクション | プログラムの再開を選択するか F9を押してセッションを再開します。

リクエストをスキップするスクリプトを指定する

PhpStormがデバッグ中に無視するスクリプト要求を指定することもできます。この方法は、アプリケーションにAJAXを使用するスクリプトが含まれている場合に役立ちます。Webページの一部を「リロード」する menu-ajax-script.php があるとします。このスクリプトは正しく機能するため、デバッグする必要はありません。ただし、このスクリプトはデバッグセッション中にも要求されます。このスクリプトへの受信接続を無視するには、menu-ajax-script.phpスクリプトをスキップパスリストに追加します。

  1. 設定/環境設定ダイアログ Ctrl+Alt+Sで、言語 & フレームワーク | PHP | デバッグ | スキップするパスに移動します。

  2. 開いたスキップするパスページで、「無視リスト」を設定します。スクリプトおよびPhpStormがそれらへの受信接続を受信した場合に呼び出されないスクリプトを含むフォルダーのセット。

    • リストに新しいエントリを追加するには、the Add button をクリックするか Alt+Insertを押します。次に the Browse button をクリックして表示されるダイアログで、接続をスキップするファイルまたはフォルダーを選択します。

    • リストからエントリを削除するには、それを選択して the Remove button をクリックするか Alt+Deleteを押します。スクリプトはリクエストを受け取ると実行されます。

  3. スキップするスクリプトへのリクエストを受け取るたびにPhpStormに通知するには、 スキップされたパスについて通知する チェックボックスをオンにします。

最終更新日: 2020年9月03日

関連ページ:

Xdebugを構成する

XdebugをダウンロードPHPのバージョンと互換性のあるXdebug拡張をダウンロードし、インストールガイドの説明に従ってインストールします。AMPパッケージを使用している場合、Xdebug拡張機能が既にインストールされている可能性があります。パッケージに固有の手順を参照してください。Xdebug...

Zendデバッガーの構成

Zend デバッガーをダウンロードしてインストールするお使いのオペレーティングシステムに対応したZend デバッガーパッケージをダウンロードしてください。PHPのバージョンに対応するディレクトリ(ZendDebugger.soなど)でZendDebugger.dll(UNIX)またはphp-7.0....

デバッグエンジンの構成を検証する

PhpStormは、XdebugまたはZend デバッガーの設定を検証して、一部の設定が欠落しているかどうか(たとえば、)、または他の設定と矛盾しているかどうかを伝えます。PHPインタープリターをプロジェクト用に設定すると、PhpStormはローカルPHP開発環境にデバッガがインストールされているか...

デバッグ

このページは、PHPプラグインが有効になっている場合にのみ使用できます。PHPプラグインはPhpStormにバンドルされており、デフォルトでアクティブになっています。プラグインが無効になっている場合は、プラグインの管理に従って、設定/環境設定 | プラグインページでプラグインを有効にします。このペー...

ブレークポイント

ブレークポイントは、特定のポイントでプログラムの実行を一時停止する特別なマーカーです。これにより、プログラムの状態と動作を調べることができます。ブレークポイントは、単純な場合(たとえば、コード行に到達したときにプログラムを一時停止する場合)や、より複雑なロジック(追加の条件に対するチェック、ログメッ...

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

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