为 Symfony CLI 命令启动 Xdebug 会话

Start Xdebug session for Symfony CLI commands

我的开发设置在 Symfony 项目的 docker 容器中包含 PHP 8 和 Xdebug 3。

目前我使用 xdebug.start_with_request=yes,但我不喜欢它对性能的影响。

如何根据 Symfony 控制台命令的需要启动 Xdebug 会话?

将 Xdebug 模式设置为 off(在您的设置中为 xdebug.mode = off;),仅为您正在执行的脚本设置环境变量 XDEBUG_MODE = debug

XDEBUG_MODE = debug bin/console run:my:command

现在只有在执行 bin/console run:my:command.

时才会启用 Xdebug

您提到您在 docker 容器内执行脚本,但这不会改变太多。您可以使用 --env 参数在 docker exec 调用中传递环境变量。