Xdebug 3 不包含在 phpinfo() 中
Xdebug 3 not included in phpinfo()
我在 Mac OS 使用 Big Sur 时遇到 Xdebug 问题。下面,我将解释发生了什么。
- 当我 运行
phpinfo()
- 我根本看不到 Xdebug 部分。
- 当我 运行 命令时,例如
xdebug_call_file()
它会抛出 PHP Fatal error: Uncaught Error: Call to undefined function
错误。
所有配置如下:
php -v
:
PhpStorm 显示调试器处于活动状态:
php.ini
(/usr/local/etc/php/8.0/php.ini) 有这些配置:
[xdebug]
zend_extension="xdebug.so"
xdebug.mode=debug
xdebug.client_host=127.0.0.1
xdebug.client_port="9003"
PhpStorm 未检测到 Xdebug 以设置解释器:
有谁知道 Xdebug 不显示可能是什么问题?
develop
: Enables Development Helpers including the overloaded var_dump(). https://xdebug.org/docs/all_settings#mode
xdebug.mode=debug,develop
当 develop
不是 xdebug.mode
设置的一部分时,您将得到的错误是:
Warning: Function must be enabled in php.ini by setting 'xdebug.mode' to 'develop'
当您收到“调用未定义函数”错误时,这意味着您的 Web 服务器环境中未加载 Xdebug。经常是web服务器环境有不同的INI文件。
为了查看是否加载了 Xdebug,以及 PHP 读取了哪些 INI 文件,您可以在 PHP 脚本中使用 phpinfo()
请求通过一个浏览器。这还将显示 Xdebug 是否已加载。如果是,您可以使用 xdebug_info()
检查其设置。
PhpStorm 的“解释器检查”也只检查命令行,而不检查 PHP 的 Web 服务器版本。
我在 Mac OS 使用 Big Sur 时遇到 Xdebug 问题。下面,我将解释发生了什么。
- 当我 运行
phpinfo()
- 我根本看不到 Xdebug 部分。 - 当我 运行 命令时,例如
xdebug_call_file()
它会抛出PHP Fatal error: Uncaught Error: Call to undefined function
错误。
所有配置如下:
php -v
:
PhpStorm 显示调试器处于活动状态:
php.ini
(/usr/local/etc/php/8.0/php.ini) 有这些配置:
[xdebug]
zend_extension="xdebug.so"
xdebug.mode=debug
xdebug.client_host=127.0.0.1
xdebug.client_port="9003"
PhpStorm 未检测到 Xdebug 以设置解释器:
有谁知道 Xdebug 不显示可能是什么问题?
develop
: Enables Development Helpers including the overloaded var_dump(). https://xdebug.org/docs/all_settings#mode
xdebug.mode=debug,develop
当 develop
不是 xdebug.mode
设置的一部分时,您将得到的错误是:
Warning: Function must be enabled in php.ini by setting 'xdebug.mode' to 'develop'
当您收到“调用未定义函数”错误时,这意味着您的 Web 服务器环境中未加载 Xdebug。经常是web服务器环境有不同的INI文件。
为了查看是否加载了 Xdebug,以及 PHP 读取了哪些 INI 文件,您可以在 PHP 脚本中使用 phpinfo()
请求通过一个浏览器。这还将显示 Xdebug 是否已加载。如果是,您可以使用 xdebug_info()
检查其设置。
PhpStorm 的“解释器检查”也只检查命令行,而不检查 PHP 的 Web 服务器版本。