【发布时间】:2021-05-30 10:16:00
【问题描述】:
我正在尝试调试 PHP 代码。我已经在 XAMPP 设置中安装了带有 PHP 的 VSCode。代码在 Firefox 浏览器中运行良好。
当我在 VS Code 的调试器中运行它时,它似乎没有读取 $_SERVER['DOCUMENT_ROOT'] 并将其显示为空。此外,$_SERVER['REMOTE_ADDR'] 显示为未定义的数组键。
VS 代码中的错误消息:
发生异常。
警告:未定义的数组键“REMOTE_ADDR”
PHP 代码:
<?php
session_start();
$a = "hello";
echo $_SERVER['REMOTE_ADDR'];
echo $_SERVER['DOCUMENT_ROOT'];
session_destroy();
?>
PHP.INI 中的 XDEBUG 设置
Enabled Features
(through 'xdebug.mode' setting)
Feature Enabled/Disabled Docs
Development Aids ✔ enabled ????
Coverage ✘ disabled ????
GC Stats ✘ disabled ????
Profiler ✘ disabled ????
Step Debugger ✔ enabled ????
Tracing ✘ disabled
[xdebug]
zend_extension = "C:\xampp\php\ext\php_xdebug.dll"
xdebug.remote_enable= 1
xdebug.remote_connect_back = 1
xdebug.remote_host=127.0.0.1
xdebug.remote_port=9003
xdebug.remote_handler=dbgp
;xdebug.idekey = "ls.xdebug"
xdebug.start_with_request=yes
xdebug.mode=debug,develop
xdebug.remote_mode = req
sdebug.mode=debug
;xdebug.profiler_enable=0
请说明为什么某些 php.ini 设置未在全局数组$_SERVER 中显示为可用。
【问题讨论】:
-
您必须在 CLI 中调试脚本,而不是作为网页(通过浏览器)。仔细检查。
标签: php visual-studio-code xdebug