コマンドラインからのデバッグセッションの開始
コマンドラインから PHP CLI スクリプトのデバッグを開始し、PhpStorm で受信デバッガー接続をリッスンすることができます。
必要に応じてブレークポイントを設定します。
ツールバー / ステータスバーの
PHP デバッグ接続のリッスンを開始をクリックするか、メインメニューからを選択します。
使用しているデバッグエンジン(Xdebug または Zend デバッガー)に応じて、デバッガーオプションを使用してスクリプトを開始します。
Xdebug でスクリプトを開始する
Xdebug には、PHP インタープリターが PhpStorm にアクセスできるようにするために使用できるさまざまな構成オプション(英語)があります。これらのパラメーターは、-d コマンドラインスイッチを使用して PHP インタープリターに渡す必要があります。より便利なのは、-d スイッチを常に提供する必要のない環境変数を設定することです。
PHP コマンドラインスイッチを使用したデバッグでスクリプトを開始する
次のコマンドラインオプションを使用して PHP を起動します。
php -d xdebug.mode=debug -d xdebug.client_host=127.0.0.1 -d xdebug.client_port=9003 -d xdebug.start_with_request=yes path/to/script.phpphp -d xdebug.remote_enable=1 -d xdebug.remote_mode=req -d xdebug.remote_port=9000 -d xdebug.remote_host=127.0.0.1 -d xdebug.remote_connect_back=0 path/to/script.php
環境変数を使用してデバッグしながらスクリプトを起動する
Xdebug を設定する環境変数を設定します。
Windows の場合:
set XDEBUG_MODE=debug& set XDEBUG_SESSION=1set XDEBUG_CONFIG=remote_enable=1 remote_mode=req remote_host=127.0.0.1 remote_port=9000 remote_connect_back=0macOS/Linux の場合
export XDEBUG_MODE=debug XDEBUG_SESSION=1export XDEBUG_CONFIG="remote_enable=1 remote_mode=req remote_host=127.0.0.1 remote_port=9000 remote_connect_back=0"
スクリプトを正常に開始します。
php path/to/script.phpオプションで、Xdebug の remote_autostart(英語) (Xdebug 2 の場合)または start_with_request(英語) (Xdebug 3 の場合)設定を使用して、実行されるすべてのスクリプトのデバッグセッションを常に開始できます。
Zend デバッガーでスクリプトを開始する
Zend デバッガーには、PHP インタープリターが PhpStorm にアクセスできるようにするために使用できるさまざまな構成オプション(英語)があります。これらのパラメーターは、環境変数を使用して PHP インタープリターに渡す必要があります。
パスマッピングの構成
特定のマシンからの接続にどのパスマッピング構成を使用する必要があるかを PhpStorm に指示するには、PHP_IDE_CONFIG 環境変数の値を serverName=SomeName に設定します。SomeName は、サーバーページで定義されたデバッグサーバー構成の名前です。PHP デバッグサーバー構成を作成するを参照してください。使用しているオペレーティングシステムに応じて、次のいずれかの形式で値を設定します。
トラブルシューティング
デバッグサーバーの構成が
PHP_IDE_CONFIG環境変数で指定されていません。この場合、PhpStorm は$_SERVER['SSH_CONNECTION']からホストとポートを検出し、存在しない場合は新しいデバッグサーバー構成を作成することを提案します。これはトンネルがなくても ssh 経由のすべての接続に有効です。デバッグサーバーの構成が
PHP_IDE_CONFIG環境変数で指定されておらず、$_SERVER['SSH_CONNECTION']が定義されていません。この場合、PHP_IDE_CONFIG環境変数を介してデバッグサーバー構成を指定する際の指示へのリンクとともに警告が表示されます。デバッグサーバーの設定は
PHP_IDE_CONFIG環境変数で指定されていますが、間違ったフォーマットが使用されています。PhpStorm はエラーメッセージと指示を表示します。PHP_IDE_CONFIG環境変数は正しく構成されていますが、指定されたデバッグサーバー構成が存在しないため、PhpStorm はサーバーページへのリンクを含む警告を表示します。
関連ページ:
ゼロコンフィギュレーションデバッグ
ゼロコンフィギュレーションデバッグの場合、デバッグ構成を作成する必要はありません。代わりに、PHP アプリケーションの開始ページをブラウザーで手動で開き、ブラウザーからデバッグエンジンをアクティブにし、PhpStorm は受信デバッガー接続を待機します。デバッグセッションを開始する:PhpStorm は、最も人気のある 2 つのツール、Xdebug と Zend デバッガーによるデバッグをサポートしています。これらのツールは、互いにブロックし合うため、同時に使用することはできません。この問題を回避...
サーバー
このページでは、デバッグエンジンがローカルサーバーおよびリモート Web サーバーと対話するための HTTP アクセスを構成し、サーバー上のファイルと PhpStorm プロジェクト内のローカルコピー間の対応を設定します。デバッグサーバー構成の設定は、PHP Web ページまたは PHP リモートデバッグタイプの実行 / デバッグ構成を使用してデバッグする場合、およびゼロ構成デバッグセッション中に使用されます。ツールバーと一般的なオプション:ツールバーのボタンを使用して、構成のリストを管理する...
PHP HTTP リクエストをデバッグする
アプリケーション全体をデバッグするだけでなく、別の HTTP リクエストをデバッグすることもできます。これは、実際に多くの手順でアクセスされている特定のページに興味がある場合に役立ちますが、このためにこのページをデバッグの開始ページとして指定することはできません。このページには特定のデータが含まれています。PhpStorm で PHP HTTP リクエストをデバッグするには、次の方法を使用できます。コードエディターで HTTP クライアントを介してリクエストを作成およびデバッグします。これは推奨さ...