xdebug var_dump를 가져 와서 전체 객체 / 배열을 표시하는 방법
내가 사용하고 Xdebug는 에 (php_xdebug-2.1.2-5.3-vc9.dll를) WAMP . 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));
모든 상황에 가장 적합한 선택은 아니지만 선택입니다!
또는 대안을 사용할 수 있습니다.
https://github.com/kint-php/kint
그것은 제로 설정으로 작동하며 Xdebug의 var_dump보다 훨씬 많은 기능을 가지고 있습니다. Kint를 사용하여 중첩 된 제한을 무시하려면 다음을 사용하십시오.
+d( $variable ); // append `+` to the dump call
나는 이것이 늦었다는 것을 알고 있지만 약간 쓸모가 있습니다.
echo "<pre>";
print_r($array);
echo "</pre>";
체크 아웃 Xdebbug의 위해서 var_dump 설정 이 설정 특히 값 :
xdebug.var_display_max_children
xdebug.var_display_max_data
xdebug.var_display_max_depth
추천하고 싶습니다 var_export($array)
-유형을 표시하지 않지만 코드에서 사용할 수있는 구문을 생성합니다. :)
참고 URL : https://stackoverflow.com/questions/9998490/how-to-get-xdebug-var-dump-to-show-full-object-array
'IT' 카테고리의 다른 글
WebSockets 프로토콜과 HTTP (0) | 2020.03.18 |
---|---|
여러 인수를 사용하여 Angular.js 필터를 어떻게 호출합니까? (0) | 2020.03.18 |
Excel 수식에서 큰 따옴표가 포함 된 문자열을 만드는 방법은 무엇입니까? (0) | 2020.03.18 |
jQuery로 요소의 ID 변경 (0) | 2020.03.18 |
루프에서 사전 증분과 사후 증분의 차이점은 무엇입니까? (0) | 2020.03.18 |