PHP var_dump () 값이 값당 한 줄을 표시하도록 만들기
내가 var_dump ($ _ 변수)를 에코하면 다음과 같은 모든 변수와 값으로 하나의 긴 줄 바꿈이 표시됩니다.
["kt_login_user"]=> string(8) "teacher1" ["kt_login_id"]=> string(3) "973" ["kt_campusID"]=> string(4) "9088" ["kt_positionID"]=> string(1) "5"
읽기 쉽도록 각 값을 한 줄에 표시 할 수있는 방법이 있습니까? 이 같은 :
["kt_login_user"]=> string(8) "teacher1"
["kt_login_id"]=> string(3) "973"
["kt_campusID"]=> string(4) "9088"
["kt_positionID"]=> string(1) "5"
예, 다음과 같이 포장 해 포장 <pre>
.
echo '<pre>' , var_dump($variable) , '</pre>';
나는 보통이 할 때 배열의 출력을 처리 할 수있는 멋진 기능을 있습니다.
function pr($data)
{
echo "<pre>";
print_r($data); // or var_dump($data);
echo "</pre>";
}
그럼 그냥 불러
pr($array);
또는 이와 같은 편집기가 있으면 스 니펫을 저장하여 빌드하는 각 프로젝트 또는 빠른 함수를 만드는 대신에 더 빠른 액세스 할 수 있습니다.
대상 print_r
:
echo "<pre>", print_r($data, 1), "</pre>";
대상 var_dump()
:
echo "<pre>", var_dump($data), "</pre>";
위의 PHP Storm과 함께 사용합니다. pr
탭 명령으로 설정했습니다 .
나는 또한이 문제를 조사했지만 정답을 찾지 못했습니다. 이것은 나를 위해 작동하지 않습니다.
echo '<pre>' . var_dump($variable) . '</pre>';
이 나에게 줄 바꿈과 함께 배열의 멋진 앰프를 제공하지 않습니다 (Firefox 31.3.0을 사용하고 있습니다)
그러나 몇 가지 실험 후에 문제가 해결되었습니다 (처음에는 php가 닫혀 있음).
... ?> <pre><?php echo var_dump($variable) ?></pre> <?php ...
이 문제를 해결하고 내 브라우저에 멋지고 읽기 쉬운 배열을 표시합니다. 태그가 PHP에서 어떻게 래핑되지 않는지 알 수 있습니다. echo var_dump 부분 만 있습니다.
XDebug가를 설치 한 경우 var_dump
대신 사용할 수 있습니다 . 인용 :
Xdebug는 변수를 표시하기 위해 PHP의 var_dump () 함수를 대체합니다. Xdebug의 버전은 다양한 유형에 대해 다른 색상을 포함하고 배열 요소 / 배열 속성의 양, 최대 깊이 및 길이에 제한을 제한합니다. 변수 표시를 다루는 몇 가지 다른 기능도 있습니다.
다음 설정 중 일부를 사용할 수 있습니다.
Xdebug의 수정 된 var_dump () 함수의 출력을 제어하는 더 많은 설정이 있습니다 : xdebug.var_display_max_children, xdebug.var_display_max_data 및 xdebug.var_display_max_depth. 이 세 가지 설정의 효과는 예를 통해 가장 잘 나타납니다. 아래 펼쳐지는 각기 다른 설정으로 4 번 실행됩니다. 탭을 사용하여 차이점을 확인할 수 있습니다.
그러나 XDebug는 방금로드 된 경우에도 코드 속도를 상당히 느리게합니다. 모든 서버에서 실행하는 것이 좋습니다. 하지만 어쨌든 서버에서는 var_dumping이 아니죠?
var_export 는 멋진 출력을 제공합니다. 문서의 예 :
$a = array (1, 2, array ("a", "b", "c"));
echo '<pre>' . var_export($a, true) . '</pre>';
출력 :
array (
0 => 1,
1 => 2,
2 =>
array (
0 => 'a',
1 => 'b',
2 => 'c',
),
)
나에게 정답은
echo '<pre>' . var_export($var, true) . '</pre>';
이후 var_dump($var)
및 var_export($var)
문자열을 반환하지 않습니다,은 사용할 필요 당신가 var_export($var, true)
강제로 var_export
값으로 결과를 반환 할 수 있습니다.
Ctrl+ U를 누르세요 소스 코드를 볼 수 있습니다 . 대부분의 브라우저는 출력을 예쁘게 만듭니다.
var_dump
수행하는 가장 추악한 방법입니다.
출력 버퍼 사용 : http://php.net/manual/de/function.ob-start.php
<?php
ob_start();
var_dump($_SERVER) ;
$dump = ob_get_contents();
ob_end_clean();
echo "<pre> $dump </pre>";
?>
또 다른 옵션은 출력 버퍼링 을 사용하고 모든 줄 바꿈 을 <br>
요소 로 변환하는 것입니다.
ob_start();
var_dump($_SERVER) ;
echo nl2br(ob_get_clean());
저는 var_export ()를 정말 좋아합니다. 복사 /에 넣기 가능한 코드가 마음에 드는 다음을 시도하십시오.
echo '<pre>' . var_export($data, true) . '</pre>';
또는 색상 구문 강조를 위해 다음과 같이 할 수도 있습니다.
highlight_string("<?php\n\$data =\n" . var_export($data, true) . ";\n?>");
뷰 소스 및 CLI 에서 작동하는 작업이 필요한 개발자의 경우 특히 단위 테스트를 수행 할 때 유용합니다.
echo vd([['foo'=>1, 'bar'=>2]]);
function vd($in) {
ob_start();
var_dump($in);
return "\n" . preg_replace("/=>[\r\n\s]+/", "=> ", ob_get_clean());
}
수율 :
array(1) {
[0] => array(2) {
'foo' => int(1)
'bar' => int(2)
}
}
<pre>
서식을 유지하려면 태그로 묶습니다 .
비슷한 해결책을 찾았습니다. 'vardump'를 다음으로 대체하는 스 니펫을 만들었습니다.
foreach ($variable as $key => $reg) {
echo "<pre>{$key} => '{$reg}'</pre>";
}
var_dump($variable);die;
추신 : 파일 이름과 줄을 얻기 위해 마지막 var_dump로 데이터를 반복하고 있습니다.
이것이 도움이 될지 알려주십시오.
내가 사용을 중지하고 싶지 않았다 var_dump($variable);die();
및 사용 pre
그래서 브라우저에서 덤프에서 찾고 있기 때문에, 난 그냥 오른쪽 페이지를 클릭하고 (내가 크롬을 사용)을 검사 선택, 태그 및 루프 나에게 과잉 것입니다. 개발자 도구의 요소 섹션은 매우 읽기 쉬운 형식으로 변수를 표시합니다.
개인적으로 나는 Symfony의 var dumper 컴포넌트에서 제공하는 대체 기능을 좋아합니다.
함께 설치 composer require symfony/var-dumper
하고 사용하십시오.dump($var)
나머지는 알아서 처리합니다. 나는 또한 약간의 JS가 삽입되어 출력과 약간의 상호 작용을 할 수 있다고 생각합니다.
참고 URL : https://stackoverflow.com/questions/10116063/making-php-var-dump-values-display-one-line-per-value
'ProgramingTip' 카테고리의 다른 글
제거하는 방법은 무엇입니까? (0) | 2020.11.29 |
---|---|
Jersey Client를 사용하여 자체 서명 된 SSL 인증서 무시 (0) | 2020.11.29 |
혼자 개발자로서 Mercurial을 어떻게 사용합니까? (0) | 2020.11.28 |
자바 프로그래머로서 무엇을 찾아야합니까? (0) | 2020.11.28 |
주석을 지향하는 Java Aspect 지향 프로그래밍 (0) | 2020.11.28 |