Debugging
Better Debugging with Xdebug
Drupal Con Vienna
Vienna, Austria
Oct 15th, 2025
Derick Rethans
derick@xdebug.org
@derickr@phpc.social
derickr
https://derickrethans.nl/talks/xdebug-drupalcon
https://xdebug.org
slides/xdebug/title.xml
slides/mongodb/me.xml
Code reorganisation
Modes
- only do what is needed
Reduce Configuration Options
Code Improvements (algorithms, memory, etc)
- xdebug_info() (demo, VS Code or PhpStorm)
- an API through xdebug_info() for mode detection (VS Code or PhpStorm)
'mode'
'extension-flags'
slides/xdebug/xdebug_info.xml
slides/xdebug/xdebug-native-path-mapping.xml
slides/xdebug/dbgp-breakpoint-types.xml
slides/xdebug/xdebug-native-path-skipping.xml
- xdebug_notify() (demo, VS Code)
slides/xdebug/xdebug_notify.xml
- file_link_format (demo, PhpStorm)
-> ticket
Step debugging improvements
Step debugging improvements
slides/xdebug/breakpoint_resolving.xml
- breakpoint resolving (demo, PhpStorm)
slides/xdebug/return_value.xml
- return value debugging (demo, VS Code or PhpStorm)
slides/xdebug/exception_value.xml
- exception value as pseudo-variable (VS Code)
- Xdebug will now also log a warning if an IDE attempts to set a breakpoint on
a file that does not exist on the file system. (demo, PhpStorm)
- xdebug_connect_to_client() (demo, PhpStorm)
- xdebug://gateway and xdebug://nameserver (explain)
slides/xdebug/xdebug-control-socket.xml
slides/xdebug/xdebug-future-features.xml
slides/xdebug/restaurant.xml
slides/xdebug/xdebug-cloud-announcement.xml
slides/xdebug/donate.xml
slides/xdebug/business-support.xml
slides/xdebug/transparency.xml
slides/mongodb/questions.xml
slides/xdebug/resources.xml