ふみちゃんの物欲日記

物欲に苛まれる日々を綴っていきます。

ubuntu 18.04 LTSで、PHPをデバッグする方法

ubuntuに、PHPVS Codeをインストールします。詳細については、以下のサイトをご覧ください。

xn--o9j8h1c9hb5756dt0ua226amc1a.com

qiita.com

次に、VS Code拡張機能である「PHP Extension Pack」を追加します。これで、PHPデバッグできるようになります。

では、PHPを設定します。

まず、apache2の拡張モジュールをインストールします。

sudo apt install php-xdebug

次に、PHPの設定ファイルである

の行末に、以下の設定を追加します。

[XDebug]
xdebug.remote_enable = On
xdebug.remote_port = 9000
xdebug.remote_autostart = On

加えて、/etc/php/7.3/apache2/conf.d/20-xdebug.iniに以下の設定を追加します。

zend_extension=/usr/lib/php/20180731/xdebug.so

また、/etc/apache2/mods-enabledの配下に、

  • php7.3.confと
  • php7.3.load

が存在するかどうかを確認します。

存在しない場合は、/etc/apache2/mods-available配下の

  • php7.3.confと
  • php7.3.load

からリンクを張ります。

また、php7.2.confとphp7.2.load、及び、php7.3.confとphp7.3.loadの両方が存在する場合は、php7..2.confとphp7.2.loadを削除します。

これで、設定は終了です。

あとは、apache2を以下のように再起動しましょう。

sudo systemctl restart apache2

以上で作業は終わりです。

VS Codeで、PHPファイルを開き、ブレークポイントを設定して、デバッグを開始すれば、ブレークポイントに停止するはずです。

以上。

追記(20201215)

xdebugがバージョン2からバージョン3になるにあたり、仕様の変更がなされました。php.iniに記述するパラメータが一新されました。

バージョン3系のxdebugを使用する場合、php.iniは、以下のパラメータを指定してください。

[XDebug]
xdebug.client_host = localhost
xdebug.client_port = 9003
xdebug.mode = debug
xdebug.start_with_request = yes

VS CODEを使用する場合は、「PHP Debug」は、Ver.1.14.0以降を使用してください。Ver1.13.0では、ブレークポイントが設定できません。また、launch.jsonに記述するポート番号も、9003に変更してください。