Как отладить код Magento 2 при использовании командной строки?

10

Запуск сценария в командной строке - это то, что мы часто делаем в Magento 2. Например, при создании нового модуля мы должны запустить setup:upgradeкоманду. Мы не можем видеть всю информацию, которую нам нужно знать.

Я знаю, что многие разработчики Magento выбирают PHPStorm в качестве своего любимого редактора. Как мы можем использовать PHPStorm для отладки командных строк Magento 2?

Хоа ТруонгДинь
источник

Ответы:

17

Я настроил « PHP Remote Debug » в PHPStorm и просто добавил XDEBUG_CONFIG перед сценарием, чтобы начать отладку.

подобно XDEBUG_CONFIG=idekey=phpstorm bin/magento setup:upgrade

Канди
источник
Как настроить отладку в локальной сети. Я бегу php 5.5.15 с xdebug 2.2.3 на windows 10 и xampp. Включите прослушивание и настройку в конфигурации, но консольная отладка запускается без каких-либо журналов
mrtuvn
Надеюсь, что эта документация поможет вам confluence.jetbrains.com/display/PhpStorm/…
KAndy
это работает отлично!
mrtuvn
2

Ответ @ Kandy поставил меня на правильный путь, но я развиваюсь локально, используя vagrant, и пришлось сделать следующее, чтобы заставить это работать 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 для справки

Фил Бирни
источник