Como depurar o código Magento 2 ao usar linhas de comando?

10

A execução de um script na linha de comando é algo que frequentemente fazemos no Magento 2. Por exemplo, ao criar um novo módulo, devemos executar o setup:upgradecomando. Não podemos ver todas as informações que precisamos saber.

Eu sei que muitos desenvolvedores do Magento escolhem o PHPStorm como seu editor favorito. Como podemos usar o PHPStorm para depurar linhas de comando do Magento 2?

Khoa TruongDinh
fonte

Respostas:

17

Eu configurei o " PHP Remote Debug " no PHPStorm e apenas adicionei o XDEBUG_CONFIG antes do script para iniciar a depuração.

gostar XDEBUG_CONFIG=idekey=phpstorm bin/magento setup:upgrade

KAndy
fonte
Como configurar a depuração no local. Estou executando o php 5.5.15 com o xdebug 2.2.3 no windows 10 e no xampp. Ativar escuta e ajuste na configuração, mas console de depuração prazo sem quaisquer registos
mrtuvn
Esperamos que esta documentação de ajuda você confluence.jetbrains.com/display/PhpStorm/...
Kandy
funciona perfeitamente!
mrtuvn
2

@ A resposta de KAndy me colocou no caminho certo, mas estou desenvolvendo localmente usando vagrant e tive que fazer o seguinte para fazer com que isso funcionasse 1

Configure o 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"

Defina o remote_hostIP como o endereço IP do host (para mim, o uso do endereço IP da ifconfigmáquina convidada não funcionou - o endereço IP usado adquirido das configurações de rede da máquina host como o remote_host).

Configurar PHP Storm

  1. Configure um servidor em Settings -> Languages and Frameworks -> PHP -> Serverscaso ainda não o tenha feito. (Veja a captura de tela) Exemplo de configurações do servidor no PHP Storm
  2. Run -> Edit Configurations e adicione um PHP Remote Debug.
    • Escolha o servidor que você criou no # 1
    • Defina a chave IDE para PHPSTORM Definições de configuração
  3. (Opcional) Settings -> Languages and Frameworks -> PHP -> DebugMarque "Interromper na primeira linha nos scripts PHP" (isso pode ajudar a depurar problemas com o mapeamento de caminhos).
  4. Run -> Debug Vagrant (ou o que você nomeou sua configuração na Etapa 2)
  5. Execute o script que você deseja depurar ( magento setup:upgradeno meu caso)

1 Estou usando o ubuntu / trusty64 como referência

Phil Birnie
fonte