2023/02/08更新
Laravel9+Xampp+PHP8.1に対応しました(Sail未使用パターン)
旧Laravel7での導入方法も残しています。
環境
・Windows10 x64
・VSCode
・Laravel7 (PHP 7.4.7)
・Laravel9 (PHP 8.1.12)
Xdebugインストールと設定
①VSCODEでPHP Debugをインストール
②php.iniの最下部に下記を追記
PHP7.4系 (Laravel7)
zend_extension = "C:\xampp\php\ext\php_xdebug.dll"
[XDebug]
xdebug.remote_autostart = 1
xdebug.profiler_append = 0
xdebug.profiler_enable = 0
xdebug.profiler_enable_trigger = 0
xdebug.profiler_output_dir = "c:\xampp\tmp"
xdebug.remote_enable = 1
xdebug.remote_handler = "dbgp"
xdebug.remote_host = "127.0.0.1"
xdebug.remote_log="c:\xampp\tmp\xdebug.txt"
xdebug.remote_port = 9000
xdebug.trace_output_dir = "c:\xampp\tmp"
xdebug.remote_cookie_expire_time = 36000
PHP8.1系 (Laravel9)
[XDebug]
xdebug.idekey=VSCODE
xdebug.client_host=localhost
xdebug.client_port=9000
xdebug.mode=debug
xdebug.start_with_request=1
zend_extension = C:\xampp\php\ext\php_xdebug.dll
③「上部メニュー→実行→構成を追加」からlaunch.jsonを下記を上書き
{
"version": "0.2.0",
"configurations": [
{
"name": "Listen for XDebug",
"type": "php",
"request": "launch",
"port": 9000
},
{
"name": "Launch currently open script",
"type": "php",
"request": "launch",
"program": "${file}",
"cwd": "${fileDirname}",
"port": 9000
}
]
}
④php_xdebug.dllをダウンロードして配置
C:\xampp\php\ext\php_xdebug.dll
上記パスのファイルがあるか確認し、存在しない場合はダウンロードしてくる必要があります。
※XamppのPHP8.1系には含まれていなかったので注意
こちらのリンクから公式を開きます。
上記の様にいくつかダウンロード可能な候補が出ますが、TSと書かれておりPHPのバージョンが同じものを選択してダウンロードしてください。
今回はLaravel9 (PHP 8.1系 Xampp)だったのでPHP8.1 VS16 TS(64bit)をダウンロードしました。
ダウンロードしたら、ファイル名を「php_xdebug.dll」に変更してC:\xampp\php\ext\に配置し、
C:\xampp\php\ext\php_xdebug.dllのパスが通る様にします。
デバッグ実行してみる
※既にphp artisan serveで動かしている場合、一旦終了させて再度起動させる必要があります