xdebug var_dump가 전체 개체/어레이를 표시하도록 하는 방법
WAMP에서 xdebug(php_xdebug-2.1.2-5.3-vc9.dll)를 사용하고 있습니다.사용할 때var_dump
큰 개체 또는 변수에는 전체 변수가 표시되지 않습니다.
array
'node' =>
array
'my_form' =>
array
'form' =>
array
...
xdebug를 사용하지 않으면 예상대로 표시됩니다.서류를 봤지만 해결책이 보이지 않았다.xdebug를 수정하려면 어떻게 해야 하는지 아는 사람 있나요?var_dump
완전한 오브젝트를 표시합니까?
php.ini에서 설정 가능한 변수는 다음과 같습니다.
; with sane limits
xdebug.var_display_max_depth = 10
xdebug.var_display_max_children = 256
xdebug.var_display_max_data = 1024
; with no limits
; (maximum nesting is 1023)
xdebug.var_display_max_depth = -1
xdebug.var_display_max_children = -1
xdebug.var_display_max_data = -1
물론, 이러한 설정은 실행 시에도 할 수 있습니다.ini_set()
php.ini를 수정하고 웹 서버를 재시작하고 싶지 않지만 좀 더 자세히 검사해야 할 경우 유용합니다.
ini_set('xdebug.var_display_max_depth', 10);
ini_set('xdebug.var_display_max_children', 256);
ini_set('xdebug.var_display_max_data', 1024);
아주 오래된 게시물인 건 알지만 그래도 도움이 될 것 같아서요
json 형식을 읽는 데 익숙하다면 var_dump를 다음과 같이 대체할 수 있습니다.
return json_encode($myvar);
지금까지 구축해 온 서비스의 트러블 슈팅에 사용하고 있습니다.이 서비스에는 깊이 중첩된 어레이가 포함되어 있습니다.이렇게 하면 어레이의 모든 레벨이 반환됩니다.단, php.ini 파일을 변경할 필요가 없습니다.
또한 json_encoded 데이터는 문자열이기 때문에 오류 로그에 쉽게 쓸 수 있습니다.
error_log(json_encode($myvar));
모든 상황에서 최선의 선택은 아닐지 몰라도 선택입니다!
늦은 건 알지만 쓸모가 있을지도 몰라
echo "<pre>";
print_r($array);
echo "</pre>";
또는 다음 방법을 사용할 수 있습니다.
https://github.com/php-sage/sage
제로 셋업으로 동작하며 Xdebug의 var_dump보다 훨씬 많은 기능을 갖추고 있습니다.Sage와 함께 네스트된 한계를 건너뛰려면
+d( $variable ); // append `+` to the dump call
Xdebug의 var_dump 설정, 특히 다음 설정 값을 확인합니다.
xdebug.var_display_max_children
xdebug.var_display_max_data
xdebug.var_display_max_depth
추천하고 싶습니다var_export($array)
- 타입은 표시되지 않지만 코드에서 사용할 수 있는 구문이 생성됩니다. : )
파일의 var_export가 매우 유용할 수 있습니다.
file_put_contents(__DIR__.'/temp.txt', var_export($var, true), FILE_APPEND);
예를 들어 프로덕션 서버에서 무언가를 디버깅하는 경우입니다.
언급URL : https://stackoverflow.com/questions/9998490/how-to-get-xdebug-var-dump-to-show-full-object-array
'programing' 카테고리의 다른 글
base64를 사용하여 이미지 파일 인코딩 (0) | 2022.09.06 |
---|---|
namesed 이외의 모듈에서의 mapState (0) | 2022.09.06 |
Vuex 작업이 제대로 작동하지 않습니다.signInWithEmailAndPassword failed:첫 번째 인수 "email"은 유효한 문자열이어야 합니다. (0) | 2022.08.30 |
말록은 스레드 세이프입니까? (0) | 2022.08.30 |
JavaScript를 사용하여 인덱스별로 배열 요소를 제거하려면 어떻게 해야 합니까? (0) | 2022.08.30 |