Xdebug不能在CLI和Lando环境下工作



我正在尝试在Lando环境中设置CLI Xdebug。它可以在web上完美地工作,但我无法从CLI中调试测试和脚本。

这是我的。lando。yml文件:

name: develop
recipe: wordpress
proxy:
appserver_nginx:              
- develop.loc
config:
php: '7.3'
via: nginx
database: mariadb
xdebug: true
我使用PHPStorm作为我的IDE。我已经设置了服务器、服务器映射以及用于侦听的端口9000和9003,但是它仍然没有在断点处停止。有人用Lando设置了CLI Xdebug吗?什么好主意吗?谢谢你的帮助。

我设法使它工作。因此,我们的想法是设置两个环境变量:

  1. PHP_IDE_CONFIG="serverName=localhost",其中localhost是PhpStorm设置中的服务器名称。

  2. XDEBUG_TRIGGER="1"-这个变量触发xdebug.

但是我们如何动态地提供变量来使XDEBUG_TRIGGER只在你想要的时候工作呢?

对于这样的事情,兰多有工具选项!因此,我们可以创建自定义命令来实现这个奇迹,就像这样:
tooling:
phpdebug:
service: appserver
cmd:
- php
env:
XDEBUG_TRIGGER: 1
PHP_IDE_CONFIG: "serverName=localhost"

然后重新启动(或重新构建)您的应用服务器,您将拥有一个全新的自定义命令,用于从CLI中调试PHP,如下所示:

lando phpdebug test.php

因此,它的工作原理与lando php test.php相同,但是提供了运行Xdebug所需的所有环境变量。

更新:如果有人对如何从Lando环境中调试WP CLI感兴趣:

lando phpdebug /app/vendor/wp-cli/wp-cli/bin/../php/boot-fs.php --version

因此,它与lando wp --version相同,但提供了Xdebug环境变量

注:请注意-这是Xdebug 3的说明。

相关内容

  • 没有找到相关文章

最新更新