문제

나는 생각하지 않은 이니다.매 작품의 설명서를 발견했을 사용하는 방법을 설명합니다 xdebug 디버깅하는 스크립트를 실행에서 아파치.내가 필요로 디버깅하 php CLI 스크립트입니다.

그래서 예를 들어,어떻게 통과하는 XDEBUG_SESSION_START 변수에서 얻을 수 xdebug 에 킥?

저는 특별히 디버깅하 cakephp 의 쉘입니다.그래서 사람이 어떤가있는 경우 추가적인 통찰력으로 내가 아주 감사하다.

감사합니다.

도움이 되었습니까?

해결책

그것에 대한 몇 가지 메모가 있습니다 Xdebug의 매뉴얼, 예를 들어 (인용) :

export XDEBUG_CONFIG="idekey=session_name"
php myscript.php

Eclipse PDT를 사용하여 PHP 스크립트를 개발하고 디버깅하는 경우 Apache 또는 CLI 사이에 큰 차이가 없습니다. 구성 lloks는 매우 동일합니다. 웹 서버를 구성하거나 URL을 표시 할 필요가 없습니다. 대신, PHP 실행 파일의 경로를 표시해야합니다.

대한 XDEBUG_SESSION_START 변수 : 글쎄, 당신은 "디버그 모드"에서 전체 스크립트를 시작하므로 "디버깅 세션"이라는 개념이 없습니다.


예를 들어, 여기에 무엇이 있습니다 Window > Preference > PHP > PHP executables 지금은 나를 위해 보이는데, 오른쪽에서 클릭 할 때 얻는 것은 Edit 첫 번째 버튼 :


(원천: Pascal-Martin.fr)
   
(원천: Pascal-Martin.fr)

그리고 debug configurations 창문 :


(원천: Pascal-Martin.fr)

디버깅 시작 : 그것은 단지 작동합니다.


(원천: Pascal-Martin.fr)


도움이 되었기를 바랍니다 :-)

그렇지 않으면 어떤 특정한 문제가 발생합니까?

다른 팁

를 사용하는 경우 bash(또는 이와 유사한 포탄),이 작은 스크립트 유용하게 사용할 수 있습니:

alias drush-debug=drd
function drd {
    export XDEBUG_CONFIG="idekey=cli_session"
    export SERVER_NAME="developer.machine"
    export SERVER_PORT="9000"
    drush "$@"
    unset XDEBUG_CONFIG
    unset SERVER_NAME
    unset SERVER_PORT
};

또는 제안에 의하여 아래 주석가

alias drd='XDEBUG_CONFIG="idekey=PHPSTORM" drush "$@"'

이 방법은 당신이 없을 수동으로 설정하고 설정된 트리거의 변수가 각각의 시간을 당신이 원하는 디버그.

다음 섹션을 php.ini에 넣으십시오

[XDebug]
xdebug.max_nesting_level = 200
xdebug.remote_enable=1
xdebug.remote_port=9000
;xdebug.profiler_enable=1
xdebug.idekey=PHPSTORM
xdebug.remote_autostart=1

phpstorm을 IDE 키로 바꾸십시오

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top