Composer php 将xdebug与drush命令一起使用
我有两个Drupal代码库。首先,我可以通过浏览器和drush命令命中特定的断点。第二,我只能通过浏览器点击断点。drush命令在未命中断点的情况下成功完成。我找不到这两个装置之间有任何有意义的区别 Windows 10 home上的本地开发Composer php 将xdebug与drush命令一起使用,composer-php,xdebug,drush,ddev,Composer Php,Xdebug,Drush,Ddev,我有两个Drupal代码库。首先,我可以通过浏览器和drush命令命中特定的断点。第二,我只能通过浏览器点击断点。drush命令在未命中断点的情况下成功完成。我找不到这两个装置之间有任何有意义的区别 Windows 10 home上的本地开发 Docker工具箱 DDEV v1.14.2 作曲家版本1.10.5 IDE是VSCode,两者之间的launch.json文件相同 未安装Drush启动器 好的: c:…\d8-04-28>ddev执行drush状态 Drupal版本:8.8.5 站点U
Docker工具箱
DDEV v1.14.2
作曲家版本1.10.5
IDE是VSCode,两者之间的launch.json文件相同
未安装Drush启动器 好的:
c:…\d8-04-28>ddev执行drush状态
Drupal版本:8.8.5
站点URI:
数据库驱动程序:mysql
数据库主机名:DB
数据库端口:3306
DB用户名:DB
数据库名称:数据库
数据库:已连接
Drupal引导:成功
默认主题:bartik
管理主题:七个
PHP二进制文件:/usr/bin/php7.3
PHP config:/etc/PHP/7.3/cli/PHP.ini
PHP操作系统:Linux
Drush脚本:/var/www/html/vendor/Drush/Drush/Drush
Drush版本:10.2.2
桶温度:/tmp
Drush配置:/var/www/html/vendor/Drush/Drush/Drush.yml
/var/www/html/drush/drush.yml
安装配置文件:标准
Drupal root:/var/www/html/web
站点路径:站点/默认值
文件,公共:站点/默认/文件
文件,临时:/tmp 坏的
c:…\d8-06-08>ddev执行drush状态
Drupal版本:8.8.5
站点URI:
数据库驱动程序:mysql
数据库主机名:DB
数据库端口:3306
DB用户名:DB
数据库名称:数据库
数据库:已连接
Drupal引导:成功
默认主题:bartik
管理主题:七个
PHP二进制文件:/usr/bin/php7.3
PHP config:/etc/PHP/7.3/cli/PHP.ini
PHP操作系统:Linux
Drush脚本:/usr/local/bin/Drush
Drush版本:10.2.2
桶温度:/tmp
Drush配置:/var/www/html/vendor/Drush/Drush/Drush.yml
/var/www/html/drush/drush.yml
安装配置文件:标准
Drupal root:/var/www/html/web
站点路径:站点/默认值
文件,公共:站点/默认/文件
文件,临时:/tmp 仅在坏的情况下,在ddev中打开xdebug后,drush状态中的PHP配置行更改为:
PHP配置:/tmp/bApEy0 我很确定我的调试问题与处于drush状态的drush脚本行有关,但我找不到任何影响该行的更改
有什么想法可以告诉我正确的方向吗?我注意到第一个显示“Drush脚本:/var/www/html/vendor/Drush/Drush/Drush”,第二个显示“Drush脚本:/usr/local/bin/Drush”。但是在容器中,/usr/local/bin/drush是“drush启动器”。所以这一切发生的方式肯定是不同的
- 在调试drush(或任何命令行脚本)时,以最简单的方式执行它,即在容器中执行,因此
,然后运行drushddev ssh
- 但是要具体说明您正在运行什么,不要在容器中使用drush启动器,通过运行/var/www/html/vendor/bin/drush来运行站点安装的drush,这样就不会有额外的脚本层运行额外的drush层
- 主机系统上的drush或drush launcher与此无关,因为所有事情都发生在容器中
- 在调试之前,请记住打开
ddev xdebug
- 请查看位于的文档中的“PHPStorm和命令行调试”,以及Matt Glaman关于