ホームページ  >  記事  >  開発ツール  >  phpstorm を使用して Docker で PHP プロジェクトをデバッグする方法を段階的に説明します。

phpstorm を使用して Docker で PHP プロジェクトをデバッグする方法を段階的に説明します。

藏色散人
藏色散人転載
2022-01-05 15:43:284830ブラウズ

phpstorm の次のチュートリアル コラムでは、PHPStorm を使用して Docker で PHP プロジェクトをデバッグする方法を紹介します。

このマシンは docker を使用して開発されています。デバッグに慣れている人にとって、PHP を docker コンテナに配置することはさらに困難なレベルになります。

もちろん、これは設定をまだ理解していない場合に限りますが、コツをマスターすれば、実際には

より簡単で、ローカル設定と難易度はほとんど変わりません。 。

1 環境

始める前に、環境に関する前提条件をいくつか立てましょう:

Docker はこのマシンにインストールされています
  • xdebug 拡張機能がインストールされた PHP コンテナがあります。
  • コードがこのマシン上にあるディレクトリは、
  • /Users/gary/dnmp/www/localhost
  • です。 コードはコンテナ ディレクトリにマップされます:
  • /var/www/html/localhost
  • プロジェクトはドメイン名
  • localhost
  • を使用し、それをバインドしますホストホストと nginx 構成PHP-FPM は、
  • 9000
  • ポートを介して nginx コンテナ/アプリケーションに接続します
  • ここでのドメイン名は必ずしも # ではありません##localhost
、Laravel、Yii、Thinkphp およびその他のフレームワークを使用する場合は、通常、

mydev.comdev.awaimai.com のようなドメイン名を使用します。 awaimai.dev、この記事も該当します。 2 php.ini 設定

主な設定は次のとおりです:
[XDebug]
 xdebug.remote_enable = 1
 xdebug.remote_handler = "dbgp"
 xdebug.remote_host = host.docker.internal

これらの行の機能は次のとおりです:

Open
    xdebug リモート デバッグ
  • デバッグ モードの場合は、dggp
  • リモート アドレスの場合は、host.docker.internal を使用します。
  • 、docker コンテナが配置されているホスト。ホストが Linux システムの場合、
  • host.docker.internal は使用できない可能性があります。PHP コンテナとホストの同じ仮想ネットワーク下の IP を使用する必要があります。docker ネットワークを使用してくださいホストで dnmp_default コマンドを検査すると、このコマンドが見つかります (dnmp_default はコンテナーが配置されているネットワークです)。 ここでは
  • xdebug.remote_port
を設定していません。これは、xdebug がデフォルトで

9000 を使用するためであり、これは FPM と一致しており、設定する必要はありません。再度設定してください。 FPM が他のポートを使用する場合は、remote_port も対応するポートに変更する必要があります。 設定が完了したら、PHP コンテナを再起動します

2 PHPStorm 構成

1 メニュー選択実行

構成の編集

2 ポップアップ ボックスの左上隅にある phpstorm を使用して Docker で PHP プロジェクトをデバッグする方法を段階的に説明します。
番号をクリックし、

PHP Web ページを選択します。

#3 まだサーバーがありません。サーバーを追加する必要があります。以下に示すように、サーバーの右側にある phpstorm を使用して Docker で PHP プロジェクトをデバッグする方法を段階的に説明します。...
ボタンをクリックします。

#4 次に、構成サーバー情報があり、これが Docker コンテナーです。 phpstorm を使用して Docker で PHP プロジェクトをデバッグする方法を段階的に説明します。

名前:
    サーバー名。任意に記述できます。
  • ホスト:
  • ドメイン名。ここでは
  • localhost を使用します。ドメイン名が awaimai.dev に似ている場合は、## を入力します。 #awaimai.dev. ポート: サーバーに接続するポート。ここでは、
  • 80
  • ポートを使用して nginx 経由で PHP に接続するため、ここではデフォルトの 80 が保持されます。 デバッガ: Xdebug を使用します。
  • パス マッピングを使用する : ここで
  • must
  • をチェックし、ローカル コードとコンテナー コードの間のマッピング関係を入力します。フレームワークを使用している場合は、ここにフレームワークのルート ディレクトリを入力します。 #[OK] をクリックして保存します。
5 戻ったら、
phpstorm を使用して Docker で PHP プロジェクトをデバッグする方法を段階的に説明します。

Name:

設定名を入力します。何気なく入力します。ここではホームページをデバッグします。

Index を入力します。

  • サーバー: ドロップダウンでサーバーを選択します。ここでは、先ほど追加した localhost を選択します。
  • 開始 URL: デバッグを開始するページ。/ は、
  • /home/index## などの別のページである場合、ホームページを意味します。 #、次に
  • /home/index を入力します。 OK
  • をクリックして保存します。

3 デバッグの開始

コード ウィンドウに戻り、コードの前に [breakpoint] を配置して、[デバッグ ボタン] をクリックします。 ] と入力すると、次のようになります。

phpstorm を使用して Docker で PHP プロジェクトをデバッグする方法を段階的に説明します。

PHPStorm はブラウザを自動的に開き、プログラムがブレークポイントに到達すると自動的に停止します。

ここでは、PHP のグローバル変数、コール スタック、一時変数を確認できます。

非常に便利なシングルステップ デバッグも可能です。

以上がphpstorm を使用して Docker で PHP プロジェクトをデバッグする方法を段階的に説明します。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はawaimai.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。