PhpStorm 2023.1 Beta: Debugger With Data Flow Analysis
In this build, you can find additions to the PHP debugger that allow you to see conditional values ahead of time and dim out runtime-unreachable code.
The Beta build is part of the EAP, which means that it’s free to use and you can install it side by side with a stable version of PhpStorm.
Debugger with DFA
Users who prefer Xdebug for debugging PHP applications will soon have one more advanced feature at their disposal. The Data Flow Analysis (DFA) debugger will allow you to see branches of code that will never be executed ahead of time, without going step by step with the debugger through the code.
Let’s see it in action:
You can see that PhpStorm shows the precomputed result of the conditions in the inlay to the right before the code is executed. This enables you to get a sense of the situation in the code without digging deeper.
Branches that will not be executed will appear grayed out during the debugging session.
Turn off DFA during debugging
If you’re not interested in this additional information during debugging, you can right-click on any precomputed value inlay and turn the DFA feature off for the current debugging session.
If you’d like to turn off the feature permanently, you can do so under Preferences/Settings | PHP | Debug | Xdebug.
Limitations
Currently, PhpStorm does not precompute property values due to technical limitations. This is an area for future development.
Please see the release notes for a complete list of changes in the Beta build.