Skip to content
Advertisement

Xdebug 3 not included in phpinfo()

I have a problem with Xdebug on Mac OS using Big Sur. Below, I will explain what is happening.

  1. When I run phpinfo() – I don’t see a Xdebug section at all.
  2. When I run commands such as xdebug_call_file() it throws a PHP Fatal error: Uncaught Error: Call to undefined function error.

Here are all the configurations:

php -v:

enter image description here

PhpStorm shows that Debugger is active:

enter image description here

php.ini (/usr/local/etc/php/8.0/php.ini) has these configurations:

[xdebug]
zend_extension="xdebug.so"
xdebug.mode=debug
xdebug.client_host=127.0.0.1
xdebug.client_port="9003"

PhpStorm is not detecting Xdebug to set the interpreter:

enter image description here

Does anyone know what might be the issues with Xdebug not showing up?

Advertisement

Answer

The error that you will get when develop is not part of the xdebug.mode setting is:

Warning: Function must be enabled in php.ini by setting ‘xdebug.mode’ to ‘develop’

As you get the “Call to undefined function” error, that means that Xdebug is not loaded in your web server environment. It is often that the web server environment has a different INI file.

In order to see if Xdebug is loaded, and which INI files PHP has read, you can use use phpinfo() in a PHP script requested through a browser. This will also show whether Xdebug is loaded. If it does, you can use xdebug_info() to check its settings.

PhpStorm’s “Interpreter Check” also only checks the command line, and not the web server version of PHP.

User contributions licensed under: CC BY-SA
2 People found this is helpful
Advertisement