명령 줄을 사용할 때 Magento 2 코드를 디버깅하는 방법은 무엇입니까?


10

명령 행에서 스크립트를 실행하는 것은 Magento 2에서 자주하는 일입니다. 예를 들어, 새 모듈을 만들 때는 setup:upgrade명령을 실행해야합니다 . 우리가 알아야 할 모든 정보를 볼 수는 없습니다.

많은 Magento 개발자가 PHPStorm을 선호하는 편집기로 선택한다는 것을 알고 있습니다. PHPStorm을 사용하여 Magento 2 명령 줄을 어떻게 디버깅 할 수 있습니까?

답변:


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


완벽하게 작동합니다!
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게스트 컴퓨터에하지 않았다 작업 -는 AS 호스트 시스템의 네트워크 설정에서 획득 한 사용 IP 주소 remote_host).

PHP 스톰 구성

  1. Settings -> Languages and Frameworks -> PHP -> Servers아직 서버를 설정 하지 않았다면 설정하십시오 . (스크린 샷 참조) PHP 스톰에서의 서버 설정 예
  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 참조 용으로 우분투 / trusty64를 사용하고 있습니다

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.