【PHP】XdebugをインストールしてVSCodeデバッグする

PHPのデバッグツール「Xdebug」を導入時にかなりハマッてしまいました。ネットであまり有益な情報を得れなかったので、同じように苦労する方のためと自分の備忘録も兼ねて記事にします。

Xdebug導入の前提条件

環境は以下の通りです。

  • Windows7 64bit
  • PHP Version 7.2.10
  • Visual Studio Code(以下VSCode)
  • IIS

PHPはインストール済みとします。

VSCodeを使ってPHPをデバッグします。

構築済みのIISのローカル環境で動作させます。

Xdebugの導入方法

Xdebugをインストールするには、まず自分の環境に合ったXdebugをダウンロードする必要があります。

Xdebugダウンロード

…必要がありますが、上のサイトに行ってみてどれをダウンロードすればいいかわかりますか?

僕は自分でWindowsとPHPのバージョンから自分で判断して導入してうまくいかずにハマッてしまいました。

あなたは同じ失敗しないでください。なので簡単に導入する方法をご紹介します。

下記のサイトにphpinfo()の内容をコピペするだけOK。

https://xdebug.org/wizard.php

具体的な方法は以下の通り。

phpinfo()の内容をコピー

phpinfo()を開き、「ctrl + A」で全選択します。

phpinfo()コピー

先ほどのサイトにアクセスする。

phpinfo()の内容をペーストする

「ctrl + C」でテキストエリアにペースト。

Xdebugチェック

分析する

「Analyse my phpinfo() output」をクリックする。

Analyseをクリック

手順どおりに進める

Analyse結果

画像の下側にあるのがXdebugの導入手順です。

instruction

表示されたdllをダウンロードし、手順に書かれた指示通りに設定する。

1.に表示されているdllをダウンロードする。クリックするだけダウンロードできます。

2.の手順どおりにダウンロードしたdllファイルを、PHPフォルダ内のextフォルダに格納する。

DLLの保存先

3.の通り、「php.ini」を編集する。

「php.ini」を編集

4.サーバーを再起動して完了。

VSCodeでデバッグしてみる

実際にデバッグして確認してみましょう。

VSCodeで今回デバッグをするファイル「test.php」を開きます。

PHPファイルを開く

ここで注意してほしいのは、「ファイルを開く」からではなく「フォルダーを開く」から開いてください。VSCodeでデバッグするにはフォルダから開く必要があるようです。

デバッグを開始

フォルダを開いたら、デバッグを開始してブレークポイントを設置してください。ブレークポイントを設置してからデバッグを開始しても大丈夫です。ブレークポイントはダブルクリックで設置できます。

デバッグした状態で「test.php」をブラウザから開きます。今回はIISでローカル環境を構築して、そこに「test.php」を格納しているので、「http://localhost/test.php」にアクセスしました。

localhost

少し待つと、ブレークポイントまで処理が進んだところで止まることが確認できます。

ブレークポイントで止まる

ちゃんと変数に文字列が格納されていることもわかりますね。

このまま「F10」で処理を次に進めると「echo $test」でブラウザ上に「Hello world」が表示されました。

Helloworldを表示

まとめ

今回はPHPをXdebugでデバッグしてみました。

僕は丸1日くらいハマッてしまい、かなり時間をロスしてしまいましたので、少しでも同じように困っている方の参考になれば嬉しいです。

シェアする

  • このエントリーをはてなブックマークに追加

フォローする