[MAMP PHP8]xdebugを有効にする方法

MAMPをアップデートしたところ、ついでにPHPのバージョンも上げたことでxdebugの設定も再度必要な状態に。MAMPは元からxdebugが準備されているので簡単なのですが、一部つまづくポイントがあったのでメモ。

有効化

まずは[/Applications/MAMP/bin/php/php8.0.8/conf]内にあるphp.iniを開きます。一番下の方にxdebug関係の記述がコメントアウトした状態であるのですが、先頭の一行を有効な状態にします。

[xdebug]
zend_extension="/Applications/MAMP/bin/php/php8.0.8/lib/php/extensions/no-debug-non-zts-20200930/xdebug.so"
  xdebug.mode=debug
  xdebug.start_with_request=yes

ここで気づいた方もいらっしゃるでしょうが、PHP8ではxdebugの記述が違ってます。これはどうもxdebug3系の記述みたいです。

VSCodeにて設定変更

xdebug3からは、デフォルトのポートが9003に変更されています。なので変更しましょう。

実行とデバッグタブで再生ボタンがあるすぐ横に小さい歯車があると思います。そこをクリックしてlaunch.jsonを開きます。confgrations内にあるListen for Xdebugを変更してください。

    {
      "name": "Listen for Xdebug",
      "type": "php",
      "request": "launch",
      "port": 9003
    },

実行

あとは実行するだけ。