🐘

PHP Debug + Xdebug Ver3.X系 はphp.iniに追記する設定項目が違うよって話

2021/04/19に公開

はじめに

Mac PHP Visual Studio Code Xdebugを用いたローカル開発環境でデバッグをできるようにする
↑の記事を参考にXdebug + PHP Debug環境を構築していたら、

  • phpInfoではXdebugの存在を確認できる
  • var_dump()もそれっぽい挙動をしてくれる
  • でもブレークポイントで止まってくれない

といった状況で少々「むむむ・・・」となった。

解決方法

Xdebugは正常挙動っぽいのでおそらくVSCode側の何かしらが原因だろうと思い、
ひとまずVSCodeのPHP DebugのDetailsを確認

スクリーンショット 2021-01-05 6.19.00.png

めちゃくちゃ丁寧に案内されてた

というわけで

touch ~user/Desktop/php_info.txt
php -i >> ~user/Desktop/php_info.txt 

でphpInfoの内容を書き出して、

Configuration File (php.ini) Path => /Applications/MAMP/bin/php/php7.4.9/conf
Loaded Configuration File => /Applications/MAMP/bin/php/php7.4.9/conf/php.ini

php.iniのパスを確認して、

Ver2.X系

[xdebug]
zend_extension="/Applications/MAMP/bin/php/php7.4.9/lib/php/extensions/no-debug-non-zts-20190902/xdebug.so"
xdebug.remote_enable = 1
xdebug.remote_autostart = 1

と記載していたのを、

Ver3.X系

[xdebug]
zend_extension="/Applications/MAMP/bin/php/php7.4.9/lib/php/extensions/no-debug-non-zts-20190902/xdebug.so"
xdebug.mode = debug
xdebug.start_with_request = yes
xdebug.client_port = 9000

に修正したらブレークポイントでしっかり止まってくれるようになった。

終わりに

そもそも作業前にまず一次情報のInstllationを確認しようねって脳内の自分に怒られました。

GitHubで編集を提案

Discussion