Supported Versions and Compatibility
This page lists which versions of Xdebug are still supported, and with which versions of PHP they can be used.
PHP Version Support #
This table lists which version of Xdebug is still supported, and which ones to use for older PHP versions. In general, at any point when an Xdebug version is released, it will support the currently supported PHP versions.
PHP Version | Xdebug Version | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
3.4 | 3.3 | 3.2 | 3.1 | 3.0 | 2.9 | 2.8 | 2.7 | 2.6 | 2.5 | 2.4 | 2.3 | 2.2 | 2.1 | |
PHP 8.4 | ✔ | |||||||||||||
PHP 8.3 | ✔ | ✔ | ||||||||||||
PHP 8.2 | ✔ | ✔ | ✔ | |||||||||||
PHP 8.1 | ✔ | ✔ | ✔ | ✔ | ||||||||||
PHP 8.0 | ✔ | ✔ | ✔ 1 | ✔ | ||||||||||
PHP 7.4 | ✔ 1 | ✔ | ✔ | ✔ | ||||||||||
PHP 7.3 | ✔ | ✔ | ✔ | ✔ | ✔ | |||||||||
PHP 7.2 | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||||||||
PHP 7.1 | ✔ | ✔ | ✔ | ✔ | ✔ | |||||||||
PHP 7.0 | ✔ | ✔ | ✔ | ✔ | ||||||||||
PHP 5.6 | ✔ | ✔ | ✔ | |||||||||||
PHP 5.5 | ✔ | ✔ | ✔ | |||||||||||
PHP 5.4 | ✔ | ✔ | ✔ | |||||||||||
PHP 5.3 | ✔ | ✔ |
Supported | Security Fixes | Unsupported | Future |
---|
-
On Windows you need at least PHP 7.4.20 or PHP 8.0.7. Earlier Windows builds of
PHP do not export the zlib function
gzfwrite
which Xdebug 3.1 needs for compression of profile and trace files.
Compatibility #
- Zend Opcache
-
Can be loaded together with Xdebug, but it is not 100% compatible.
Load Xdebug after Opcache in
php.ini
for better compatibility. When runningphp -v
or when looking atphpinfo();
output, Xdebug should be listed below Opcache.When Opcache's optimiser is enabled, some functionality in Xdebug will not work, or differently, because it removes or changes PHP's VM instructions that Xdebug relies on.
- PHP 8 JIT
-
Xdebug does not work with PHP's JIT engine, which is implemented in Opcache. When Xdebug is loaded with PHP's JIT on, you will get a warning, and JIT will be disabled.
- DBG, APD, ioncube, SourceGuardian etc
-
Xdebug does not work together with other extensions that deal with PHP's internals. This is due to compatibility problems with those modules.