2016-12-15 3 views
1

Xdebug (PhpStorm 포함 또는 제외)를 사용하여 줄 번호로 중단 점 위치를 지정하는 대신 논리 조건을 사용하여 중단 점을 정의하는 방법은 무엇입니까? 예 : $x==3 또는 is_null($y)' 일 때 실행을 중지해야합니다.Logical breakpiont

답변

2

수 없습니다. "$x==3 인 경우에만 123에서 중지"또는 "$x==3 인 경우에만 예외가 발생하지만"중단 점을 조건부로 만들 수는 있지만 중단 점 은 순전히을 조건부로 만들 수 없습니다.

0

저는 phpstorm을 모르지만 다른 디버거 클라이언트에서는 xdebug_break()를 사용하여 실행을 중지 할 수 있습니다. $ x와 $ y를 사용하는 코드에 다음 스 니펫을 넣으십시오.

if ($x==3 || is_null($y)) { 
    xdebug_break(); 
} 

()는 Xdebug는에게 documentation

부울 xdebug_break를 참조 디버그 클라이언트에 중단 점을 발행합니다.

이 함수는 일반 파일/줄 중단 점이이 줄에 설정되어있는 것처럼 특정 줄에서 디버거를 중단시킵니다.

+1

실제로 OP가 요구 한 것이 아닙니다. 그는 "전역 중단 점"을 원합니다. 특정 조건이 특정 코드 행과 연결되지 않은 상태에서 실행이 중단되어야합니다. 귀하의 솔루션은 조건부 중단 점 ..와 동일하지만, 코드 수정을 필요로하지 않으므로 (IDE/편집기 측면에서 모든 작업이 더 효과적입니다). – LazyOne