Сначала я включил XAMPP и запустил следующие службы:
Кстати, версия PHP 7.3.3. Потом проверил phpinfo()
в браузере. Вот скриншот:
И я пошёлxdebug.orgчтобы загрузить эту версию Xdebug:
Когда я скопировал этот файл в C:\xampp\php\ext
, я обнаружил, что есть файл с именем php_xdebug.dll
. Как бы то ни было, я все равно вызвал файл Xdebug в путь без изменения его имени ( php_xdebug-2.7.2-7.3-vc15-x86_64.dll
).
Далее я скопировал фрагмент кода php.ini
из статьи в Интернете:
zend_extension = "C:\xampp\php\ext\php_xdebug-2.7.2-7.3-vc15-x86_64.dll"
[XDebug]
xdebug.remote_enable = 1
xdebug.remote_autostart = 1
xdebug.remote_port = 9000
Но я не мог понять, почему порт был 9000, и порт вообще не работал. Я ввел его localhost:9000
в адресную строку Chrome, и на странице результатов показано, что localhost отклонил мой запрос на подключение.
Однако я все равно пошел дальше. Я установил расширение "PHP Debug" в VS Code. Расширение 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-файл и отладил его. Когда я открыл файл в браузере, отладочная программа не работала. Так что, пожалуйста, скажите мне, в чем проблема, и покажите точные шаги отладки?
обновление: Наконец-то я нашел, в чем проблема, номер порта 9000 занят! Поэтому я ввел 'netstat -ano' в cmd и нашел порт 9000 и соответствующее значение PID.введите описание изображения здесьЗатем введите «taskkill /PID 4380 /F», чтобы завершить процесс, занимающий порт. Наконец, перезапустите службы PHP. Таким образом, эта проблема решена. Но помните, убедитесь, что вы установили правильную версию xdebug, которую вы можете увидеть в phpinfo() XAMPP. Спасибо друзьям в области комментариев за вашу помощь.