Когда проект достаточно объемный - порой для отладки начинает не хватать отладочных сообщений. Не в том плане, что они как-то "хуже" начинают работать. Просто большим количеством отладочных сообщений управлять не удобно, много времени тратится на правки этих сообщений. На помощь приходит отладчик Xdebug.
Но увы, за окном 2023 год, многие мануалы по этой теме в сети устарели - восполняем этот пробел ...
Все устанавливалось и тестировалось для VS Codium, и это, в каких-то вариациях, должно подойти и для VS Code. Ибо VS Codium, как форк VS Code, практически полностью совместим с последним. Итак, в качестве веб-сервера выбираем OpenServer v.5.4.3.
Это важно!
При условии использования PHP 7.4 для использования Xdebug нужна версия PHP >= 7.4.20.
OpenServer v.5.4.3. поставляется с PHP v.7.4.30 - и это уже подходит.
Установку произвел в каталог D:\Tools\OpenServer. Соответственно, после установки вношу правки в файл настроек PHP7.4 - D:\Tools\OpenServer\userdata\config\PHP_7.4_php.ini:
zend_extension = opcache zend_extension = xdebug ... [xdebug] xdebug.mode = debug xdebug.client_host = "localhost" xdebug.client_port = 9000 xdebug.connect_timeout_ms = 200 xdebug.output_dir = "%sprogdir%/userdata/temp/xdebug" xdebug.start_with_request = yes
Важно, чтобы в файле настроек zend_extension = xdebug объявлялась после zend_extension = opcache, причин не помню, да и не важно.
Выкачиваем динамическую библиотеку php_xdebug-3.1.6-7.4-vc15-x86_64.dll и записываем (с заменой) под именем D:\Tools\OpenServer\modules\php\PHP_7.4\ext\php_xdebug.dll. Перезапускаем OpenServer. На этом этапе желательно пройти проверку настроек и окружения. Для этого выполняем следующее:
D:\Tools\OpenServer\modules\php\PHP_7.4\php.exe -v > php-info.txt
"You're already running the latest Xdebug version"
. В противном случае - нужно смотреть по ответам что не так.Заходим в раздел расширений, в строке фильтра набираем xdebug
. Среди отфильтрованных расширений выбираем за авторством felixfbecker
и инсталлируем.
Для настройки открываем в редакторе напрямую файл settings.json
У меня он расположен тут - D:\Tools\VSCodium\data\user-data\User\settings.json
.
Или же воспользуемся интерфейсом VS Codium:
потом
В конец файла настроек добавляем:
"launch": { "configurations": [ { "name": "Launch for XDebug", "type": "php", "request": "launch", "port": 9000, "runtimeExecutable": "D:/Tools/OpenServer/modules/php/PHP_7.4/php.exe" }, { "name": "Launch for current script", "type": "php", "request": "launch", "program": "${file}", "cwd": "${fileDirname}", "port": 9000, "runtimeExecutable": "D:/Tools/OpenServer/modules/php/PHP_7.4/php.exe" } ] }, "php.debug.executablePath": "D:/Tools/OpenServer/modules/php/PHP_7.4/php.exe"
На этом все - перегружаем VS Codium.