Я хочу использовать плагин VSCode 'PHP Debug' с Xdebug для отладки PHP сценариев.
Но когда я выбираю "Отладка | Начать отладку F5", появляется небольшое всплывающее окно отладки, и я я застрял Кнопки Пауза, Перезапуск, Стоп активны. Кнопки для перехода в, неактивные (неактивные). В консоли отладки ничего не происходит.
(1) VSCode 1.42.1 установлен
(2) XAMPP v3.2.4 запущен и работает
(3) Xdebug установлен с использованием wizzard и вставил мои данные phpinfo (), чтобы определить правильную версию. Когда я запускаю 'admin' из панели управления XAMPP и просматриваю phpinfo, браузер показывает мне (среди многих других вещей):
[...]
This program makes use of the Zend Scripting Language Engine:
Zend Engine v3.4.0, Copyright (c) Zend Technologies
with Xdebug v2.9.2, Copyright (c) 2002-2020, by Derick Rethans
[...]
(4) php.ini
имеет
[XDEBUG]
xdebug.remote_enable = 1
xdebug.remote_autostart = 1
xdebug.show_local_vars = 1
xdebug.remote_log = "C:\Program Files_\xampp\php\logs\xdebug.log"
zend_extension = "php_xdebug-2.9.2-7.4-vc15-x86_64.dll"
(обратите внимание, что «Program Files_» НЕ является защищенным каталогом «Program Files», XAMPP имеет доступ на запись, как показано для пункта (9) ниже)
(5) путь Windows имеет C:\Program Files_\xampp\php;
в
(6), когда я использую расширение Code Runner в VSCode для запуска сценария «Hello World. php», это просто отлично работает
(7) launch.json
для отладчика VSCode имеет
"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,
}
]
(8) мой брандмауэр Windows имеет правило входящего трафика, разрешающее TCP-трафик c на порт 9000.
(9), когда я просто запускаю код, xdebug .log (см. php.ini
) обновляется до
[94396] Log opened at 2020-03-08 07:45:28
[94396] I: Connecting to configured address/port: localhost:9000.
[94396] E: Time-out connecting to client (Waited: 200 ms). :-(
[94396] Log closed at 2020-03-08 07:45:28
Но когда я использую «Отладка | Начать отладку F5», в xdebug.log ничего не происходит.
Это вся информация, которая Я думал, что актуально до сих пор. Что оставляет меня вот так:
me -> update_status("at wit's end")
У вас, волшебники, есть идеи, куда копать? Какой конфигурационный файл настроить? К какому файлу журнала обратиться?
сноска: отладка Python скриптов в VSCode работает так, как и ожидалось.