使用命令行时如何调试Magento 2代码?


10

在Magento 2中,我们经常在命令行中运行脚本。例如,在创建新模块时,必须运行setup:upgradecommand。我们看不到我们需要知道的所有信息。

我知道许多Magento开发人员都选择PHPStorm作为他们最喜欢的编辑器。我们如何使用PHPStorm调试Magento 2命令行?

Answers:


17

我在PHPStorm中配置了“ PHP Remote Debug ”,并在脚本开始调试之前添加了XDEBUG_CONFIG。

喜欢 XDEBUG_CONFIG=idekey=phpstorm bin/magento setup:upgrade


如何在本地设置调试。我在Windows 10和xampp上使用xdebug 2.2.3运行php 5.5.15。在配置中启用侦听和设置,但控制台调试运行时没有任何日志
mrtuvn

希望您在本文档的帮助confluence.jetbrains.com/display/PhpStorm/...
康提

它完美地工作!
mrtuvn

2

@KAndy的答案使我走上了正确的道路,但是我正在使用无业游民在本地进行开发,因此必须执行以下操作才能使其正常工作1

配置Xdebug:

zend_extension=xdebug.so
xdebug.remote_enable = 1

;remote_connect_back will fail because REMOTE_ADDR header wont be set
xdebug.remote_connect_back = 1
xdebug.remote_autostart = 1
xdebug.idekey = "PHPSTORM"

;remote_host is ignored when remote_connect_back is enabled & successful; fallback
;Set to your HOST MACHINE IP
xdebug.remote_host=xx.xx.xx.xx 

;provides valuable insight if you cant connect. Remove when done.
xdebug.remote_log="/tmp/xdebug.log"

设置remote_hostIP到IP地址的主机(对我来说,使用IP地址从ifconfig客户机上没有工作-从网络设置在主机上获取作为使用的IP地址remote_host)。

配置PHP Storm

  1. Settings -> Languages and Frameworks -> PHP -> Servers如果尚未设置服务器,请在下面进行设置。(请参见屏幕截图) PHP Storm上的示例服务器设置
  2. Run -> Edit Configurations 并添加一个 PHP Remote Debug.
    • 选择您在#1中创建的服务器
    • 将IDE密钥设置为PHPSTORM 配置设定
  3. (可选)Settings -> Languages and Frameworks -> PHP -> Debug选中“在PHP脚本的第一行中断”(这可以帮助调试路径映射问题。)
  4. Run -> Debug Vagrant (或您在第2步中命名的配置)
  5. 运行您要调试的脚本(magento setup:upgrade以我为例)

1我正在使用ubuntu / trusty64作为参考

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.