VSCode(Visual Stdio Code)でPHPのデバッグ環境の構築に苦労したので、備忘録という意味も込めて手順を解説します。
開発を行おうとしたらステップデバッグ機能は必須ですよね。
僕と同じようにVSCode(Visual Stdio Code)でPHPのデバッグ環境を構築しようとしている方の参考になると幸いです。
目次
環境
僕の環境は以下の通りです。
- MacOS Catalina 10.15.2
- PHP 7.3.7
- VSCode(Visual Stdio Code) 1.42
- MAMP 5.4
VSCode(Visual Stdio Code)でPHPのデバッグ環境構築する手順
VSCode(Visual Stdio Code)でPHPのデバッグ環境構築する手順は以下の通りです。
- VSCodeの拡張機能「PHP Debug」をインストール
- Xdebguをインストール
- php.iniファイルの内容を修正
順番に見ていきます。
VSCodeの拡張機能「PHP Debug」をインストール
VSCodeに拡張機能「PHP Debug」をインストールします。
僕がインストールした時は「PHP Debug」のバージョンは1.13.0でした。
これはVSCodeの拡張機能で「PHP」で検索するとすぐに出てきます。
スクリーンショットは既にインストール済みのものになります。
インストールされていない場合は、「アンインストール」のボタンが「インストール」となっているはずなのでそれをクリックすればすぐにインストールできます。
Xdebguをインストール
僕はここにてこずりました。
まずはMAMPの「Open WebStart Page」をクリックします。
するとMAMPのWebサイトが開くので、ヘッダーメニューの「TOOLS → PHPINFO」をクリックします。
PHPの情報が表示されるので、「Command + A」で全て選択し、「Command + C」でコピーします。
Xdebug(https://xdebug.org/wizard)のサイトにアクセスすると、テキストを貼り付けできるエリアがあるので、そこに「Command + V」で貼り付けし、「Analyse my phpinfo[] output」ボタンをクリックします。
情報のSummaryとインストール手順(Instructions)が表示されるので、インストール手順(Instructions)に従って進めればOKです。
インストール手順(Instructions)は残念ながら英語なので、以下の手順で進めればOKです。
- リンクにあるxdbug-X.X.X.tgz(X部分はバージョン)をダウンロードする
- Xdebugのインストールに必要なPHPとautoconfをインストールする
12$ brew install php$ brew install autoconf - ダウンロードしたxdbug-X.X.X.tgzをtarコマンドで解凍する
12$ cd xdebug-X.X.X.tgzをダウンロードしたフォルダ$ tar -xvzf xdebug-2.7.2.tgz - 解凍されたフォルダのディレクトリに移動する
1cd xdebug-X.X.X - phpizeコマンドを実行する
1$ phpize - ./configureコマンドを実行する
1$ ./configure - makeコマンドを実行する
1$ make - cp modules/xdebug.soコマンドを実行する
※xdebug.soの後のパスはインストール手順(Instructions)に表示されたものにする
1$ cp modules/xdebug.so /Applications/MAMP/bin/php/php7.3.8/lib/php/extensions/no-debug-non-zts-20180731 - php.iniファイル(パスはインストール手順(Instructions)に記載されているもの)を開いて、ファイルの末尾に以下を貼り付けます。
12zend_extension = /Applications/MAMP/bin/php/php7.3.7/lib/php/extensions/no-debug-non-zts-20180731/xdebug.so※貼り付ける値はインストール手順(Instructions)に表示されたものにしてください - MAMPのWebサーバーを再起動する。
php.iniファイルの内容を修正
僕の場合は上記までではうまくいかず、上記の⑨で編集したphp.iniファイルに以下を追記することで、うまくいきました。
1 2 3 4 |
xdebug.remote_enable=1 xdebug.remote_host=localhost xdebug.remote_autostart=1 xdebug.remote_port=9000 |
VSCode(Visual Stdio Code)でPHPのデバッグ方法
VSCode(Visual Stdio Code)でPHPのデバッグ方法は以下の通りです。
- ブレークポイントを設定する
- 左側の虫のようなアイコンをクリックする
- デバッグスタートボタンをクリックする
- デバッグしたいファイルにアクセスする
- デバッグコントロールボタンでステップデバッグする
まとめ
いかがだったでしょうか?
この手順でうまくいかなかった場合はコメントやTwitterでご連絡を頂ければと思います。
昔はステップデバッグをするとプログラミングの力がつかないと言われてステップデバッグは悪だとされていました。
でも、僕個人的には早く、確実に問題が発見できるのでステップデバッグはガンガン使用していくべきだと考えます。
(もちろんログの見方などの基本はわかった上でですが)
みなさんもステップデバッグをうまく活用して効率よく、品質の高いアプリを作成していきましょう。