Tool

Xdebug

Step debugger, coverage and profiling for PHP — seeing the call stack instead of guessing with dumps.

Xdebug’s particularity is that it instruments the engine: breakpoints, step into, watches. That is still the fastest way to understand a Symfony container or an Ibexa permission check. var_dump is not a debugger.

Coverage mode feeds PHPUnit reports. Profiling (cachegrind) finds hot paths when “it feels slow” is not a metric. In Docker, the extension is on in dev images and off in prod — never the other way around.

A senior knows how to attach the IDE (Cursor, VS Code, PhpStorm) to the FPM container. Without that, complex bugs stay folklore.

xdebug.org

Related