PHP | Visual_Studio_Code から XDeBug を使ってデバッグする

開発中に単体テストは行っているが、実行時のデバッグも行いたいので、Xdebug を導入し、Visual Studio Code でブレークポイントの設定や使用中の変数の確認をできるようにした。

PHP の設定

Windows 環境で確認しています。

xampp をインストール

  1. http://localhost/dashboard/phpinfo.php を表示し、内容をコピーする

  2. https://xdebug.org/wizard/ を表示し、phpinfoの内容をペーストし、[Analyse my phpinfo() output]をクリックする

  3. 指定された DLL を https://xdebug.org/download#releases からダウンロード

  4. ダウンロードした DLL ファイルを c:\xampp\php\ext に移動する

  5. c:\xampp\php\php.ini に下記を追記する

    1
    2
    3
    4
    5
    6
    [XDebug]
    zend_extension = "C:\xampp\php\ext\php_xdebug-3.0.2-7.4-vc15-x86_64.dll"
    xdebug.mode=develop,debug
    xdebug.start_with_request=yes
    xdebug.client_host="localhost"
    xdebug.client_port=9000

Visual Studio Code の設定

開発環境として Visual Studio Code を使用します。

Visual Studio Code を起動する

  1. [File]->[Preferences]->[Extensions]

  2. [PHP Debug]と[PHP IntelliSense?]をインストールする

  3. [File]->[Preferences]->[Settings]

  4. [Extensions]から[PHP]を選択し、[Edit in settings.json]をクリックする

  5. 以下を追記する

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    "php.validate.executablePath": "C://xampp//php//php.exe",
    "php.executablePath": "C://xampp//php//php.exe",
    "php.suggest.basic": false,
    "workbench.iconTheme": "vs-minimal",
    "files.autoSave": "afterDelay",
    "editor.minimap.enabled": true,
    "window.menuBarVisibility": "default",
    "git.ignoreMissingGitWarning": true,
    "editor.renderWhitespace": "none",
    "editor.renderControlCharacters": false,
    "window.zoomLevel": 0
  6. 左ペインから[Run]を選択する

  7. [Crate a launch.json file]をクリックする

  8. [PHP]を選択する

  9. ワークスペース内に .vscode/launch.json が作成される。ポート番号などに変更がない場合は、このまま使用できる。