vscode利用し、Xdebug インストールする方法
環境
1.Mac m1 pro
2.MAMP利用
3.PHP 8.0.23
順番
1.
xdebugインストール
pecl install xdebug
- このコマンドで無事にインストールされてるのか確認
➜ ~ php -v PHP 8.0.23 (cli) (built: Sep 3 2022 12:20:56) ( NTS ) Copyright (c) The PHP Group Zend Engine v4.0.23, Copyright (c) Zend Technologies with Xdebug v3.1.5, Copyright (c) 2002-2022, by Derick Rethans with Zend OPcache v8.0.23, Copyright (c), by Zend Technologies
私の場合には、MAMPを利用し、Laravelのデバッグをする予定なので
まず、こっちに追加しました。
vi /Applications/MAMP/bin/php/php8.0.8/conf/php.ini
一番上に追加しました。
zend_extensionのパスはpeclコマンドでインストールする時
パスが出るのでそこのパスをコピペーして書きます。
#pecl インストール中にパスが書いているところw extension_dir => /opt/homebrew/lib/php/pecl/20200930 => /opt/homebrew/lib/php/pecl/20200930
#php.ini zend_extension="/opt/homebrew/Cellar/php@8.0/8.0.23_1/pecl/20200930/xdebug.so" xdebug.mode=debug xdebug.client_host=localhost xdebug.client_port=9003 //(port9003になっているのに注意!) xdebug.start_with_request=yes [PHP] ;;;;;;;;;;;;;;;;;;; ; About php.ini ; ;;;;;;;;;;;;;;;;;;;
詳細設定は launch.jsonに書きます。php.iniに書いといたportを合わせます。
#launch.json { "configurations": [ { "name": "Listen for XDebug", "type": "php", "request": "launch", "port": 9003 }, { "name": "Launch currently open script", "type": "php", "request": "launch", "program": "${file}", "cwd": "${fileDirname}", "port": 9003 } ] }
6.debugを実行しますw
→launch.jsonで設定したport番号に入るのではなく
普通のapacheのport番号で接続することです!
赤いポイントをつけたら
該当時点にアクセスすると
デバッグが実行されます。
・苦労したところ
→
①port設定を9003にしたので
9003にずっと接続したが、
普通のapacheのアクセスでやることでした
②最初には
ローカルのphp.iniだけに追加したので
当たり前だが、Laravelが利用するphpと違うphpだったため
できなかったです・・
本当は簡単な設定やインストールっぽいのようですが
まあ、PHPに関していろいろ勉強になりました。