2016-11-03 5 views
2

동적으로 큰 SQL 쿼리를 만드는 WordPress 플러그인을 디버깅하려고합니다. 플러그인 자체는 전체 쿼리를 어셈블하지 않지만 posts_clauses 작업을 후크하여 쿼리의 구성 요소를 WP로 보냅니다. 그런 다음 WP query.php 파일을 단일 문자열 변수로 어셈블합니다. 나는 플러그인 코드에 브레이크 포인트를 설정했다. 그런 다음 query.php를 호출하고 WP가 SQL 문자열을 작성하는 지점에 도달한다. 이 문자열을 복사하고 싶습니다만 Netbeans이 줄임표를 표시하고 문자열이 완전히 표시되기 전에 "단축"이라는 단어가 너무 길어집니다.Netbeans PHP 디버거에서 단축 된 값

Linux, PHP 5 및 xdebug에서 NB 8.2를 사용하고 있습니다. NB에서 Options|PHP|Debugger 탭은 이미 "최대 데이터 길이"에 대한 16384을 입력 한 나는 이미 Xdebug는 설정 파일에 다음 라인을 떨어했습니다 : 이미 넷빈즈와 아파치를 다시 시작했습니다

xdebug.var_display_max_data=16384 

하지만, 문제가 지속됩니다. 표시된 SQL 문자열의 일부는 정확하게 2000 자입니다.

posts_pre_query WP 액션을 연결하고 쿼리를 로그 할 수 있지만 디버깅 중이며 디버깅을 마친 코드를 버리고 디버깅하고 테스트 한 후에 소스 코드를 변경하지 않아도됩니다. ...

어떻게 디버거에서 NB show PHP 문자열 값을 2000 자 이상으로 만드나요?

+0

@AniketSahrawat 그것은 Wordpress 질문이 아니며 문맥을 제공하기 위해서만 WP를 언급했지만 WP는 실제로는 거의 부적합합니다. –

+0

@AniketSahrawat 예, 그렇습니다. 그러나 질문을 읽으면 내 문제가 WP와 아무 관련이 없음을 쉽게 깨닫게됩니다. WP는 단지 SQL 문을 울릴 수없는 이유를 설명하기위한 것입니다. –

+0

왜 debbug 쿼리를 화면에 덤프하지 않으시겠습니까? PHP에서 NetBeans debbuger에 익숙하지 않습니다 ... 도움이 될 수 있다면이 링크를 확인하십시오! http://stackoverflow.com/questions/28528819/how-to-prevent-netbeans-8-from-stopping-on-the-first-line-when-debugging-a-php-a –

답변

2

NB 소스 코드를 파고 나서 해결책을 찾았습니다. nb.php.debugger.full.values 속성은 값이 잘리는 지 여부를 제어합니다. 변수 잘라 내기 편집 귀하의 netbeans.conf 파일을 해제하고 netbeans_default_options 옵션의 끝에 -J-Dnb.php.debugger.full.values=true를 추가하려면 이후

netbeans_default_options="-J-client -J-Xss2m -J-Xms32m -J-Dapple.laf.useScreenMenuBar=true -J-Dapple.awt.graphics.UseQuartz=true -J-Dsun.java2d.noddraw=true -J-Dsun.java2d.dpiaware=true -J-Dsun.zip.disableMemoryMapping=true -J-Dnb.php.debugger.full.values=true" 

다시 시작 IDE를.

구성을 통해 NB 설정을 변경하지 않아도되므로 NB 설정을 변경하는 것이 가장 좋은 방법은 아닙니다.