VSCodeでphpのデバッグを行う方法です。phpのバッチ処理をデバッグする方法とXAMPP経由でWEBページをデバッグする方法の2本立てで紹介します。
※PHPは、汎用スクリプト言語で特にWEB開発に適しています。詳細は公式サイトをご参照ください。
拡張機能 PHP DEBUG をインストール
phpのでデバッグを行うために拡張機能をインストールします。バッチ処理、WEBページ共通です。
phpのバッチ処理をデバッグ
プログラムを実行するための構成を作成
実行のビュー(デバッグのアイコンのとこ)を開き、構成の追加を選択します。言語はPHPです。
lanch.jsonのconfigurationsに以下の設定を追加します。ポイントは、runtimeExecutableに自分の開発環境のphpのexeへのパスを正しく設定することです。
{ "name": "Launch currently open script", "type": "php", "request": "launch", "program": "${file}", "cwd": "${fileDirname}", "runtimeExecutable": "C:\\php\\php.exe", "port": 9000 }
バッチファイルのデバッグ確認
WEBページのデバッグ
XAMPPのインストール
ローカルにPHPの開発環境を簡単に導入するため、XAMPPをインストールします。インストール方法については、検索してみてください。
フォルダの構成
ここでは、Cドライブ直下に色々インストールしていると想定しています。また、「sample01」をVSCodeで使用するワークスペースのフォルダとします。この配下にphpファイルを配置する想定です。
C:\xampp\htdocs\sample01
PHPのiniにデバッグの設定追加
「C:\xampp\php\php.ini」ファイルを開き、以下を追加します。
xdebug.remote_enable = 1
xdebug.remote_autostart = 1
zend_extension=”xdebug”
「php_xdebug.dll」が「C:\xampp\php\ext」配下に存在しない場合は、以下のサイトからダウンロードし、「php_xdebug.dll」の名前で配置してください。
xdebugのダウンロード:https://xdebug.org/download
プログラムを実行するための構成を作成
実行のビュー(デバッグのアイコンのとこ)を開き、構成の追加を選択します。言語はPHPです。バッチのときと同様です。lanch.jsonのconfigurationsに以下の設定を追加します。
{ "name": "Listen for XDebug", "type": "php", "request": "launch", "port": 9000, "pathMappings": { // 左辺サーバ:右辺ローカル "${workspaceRoot}": "${workspaceRoot}" } }
今回は、xamppでのデバッグなので、pathMappingsは両方同じにしてあります。
WEBページのデバッグ確認
以下の手順でVSCodeでデバッグできることを確認します。
- VSCodeでソースにブレークポイントを設定
- Xamppのコントロールパネルから、Apacheを起動します。
- VSCodeの実行のリストボックスで「Listen for XDebug」を選択し実行します。
- ブラウザで、ブレークポイントを設定したページを開きます。
phpファイルのブレークポイントで止まれば、正常にデバッグできています。
参考
lanch.jsonの設定は、最終的に以下のような感じになります。参考までに
コメント