[php] var_dump를 예쁘게 보이게

$_GET[]DB에서 쿼리를 풀다운 할 때 테스트 데이터를 표시하기위한 간단한 쿼리 변수 세트가 있습니다.

<?php if($_GET['test']): ?>
  <div id="test" style="padding: 24px; background: #fff; text-align: center;">
    <table>
      <tr style="font-weight: bold;"><td>MLS</td></tr>
      <tr><td><?php echo KEY; ?></td></tr>
      <tr style="font-weight: bold;"><td>QUERY</td></tr>
      <tr><td><?php echo $data_q; ?></td></tr>
      <tr style="font-weight: bold;"><td>DATA</td></tr>
      <tr><td><?php var_dump($data); ?></td></tr>
    </table>
</div>
<?php endif; ?>

내가 할 때 var_dump, 예상 대로이 큰 배열 문자열은 모두 밀려납니다. 적어도 이것을 위해 줄 바꿈을 추가하거나 var_dump더 읽기 쉬운 방식으로 표시 하는 방법이 있습니까? 게시 된 문자열을 조작하는 것에 대한 jQuery 제안에 개방적입니다.



답변

정말 사랑 var_export()합니다. 복사 / 붙여 넣기 가능한 코드가 마음에 들면 다음을 시도하십시오.

echo '<pre>' . var_export($data, true) . '</pre>';

또는 색상 구문 강조를 위해 이와 같은 것 :

highlight_string("<?php\n\$data =\n" . var_export($data, true) . ";\n?>");

당신도 같은 작업을 수행 할 수 있습니다 print_r(). 들어 var_dump()당신은 단지 추가해야합니다 <pre>태그 :

echo '<pre>';
var_dump($data);
echo '</pre>';


답변

PHP 용 xdebug 확장 프로그램을 사용해보십시오 .

예:

<?php var_dump($_SERVER); ?>

출력 :

여기에 이미지 설명을 입력하십시오


답변

미리 형식화 된 HTML 요소 사용

echo '<pre>';
var_dump($data);
echo '</pre>';


답변

@AbraCadaver 답변에 추가했습니다. PHP 시작 및 종료 태그를 삭제하는 자바 스크립트를 포함 시켰습니다. 우리는 더 예쁜 덤프를 청소할 것입니다.

이 같은 사람도있을 수 있습니다.

function dd($data){
  highlight_string("<?php\n " . var_export($data, true) . "?>");
  echo '<script>document.getElementsByTagName("code")[0].getElementsByTagName("span")[1].remove() ;document.getElementsByTagName("code")[0].getElementsByTagName("span")[document.getElementsByTagName("code")[0].getElementsByTagName("span").length - 1].remove() ; </script>';
  die();
}

결과 :

여기에 이미지 설명을 입력하십시오

결과 :

여기에 이미지 설명을 입력하십시오

이제 PHP 시작 및 종료 태그가 없습니다.


답변

그것이 “모두 밀려났다”면 종종 “소스 코드보기”를 시도해 볼 수 있습니다. 때로는 줄 바꿈이 단순히 표시되지 않는 것으로 판명되면 덤프, 메시지 및 예외는 하나의 긴 문자열 인 것처럼 보입니다. 특히 XML 트리.

또는 이 목적을 위해 InteractiveVarDump 라는 작은 도구를 만들었습니다 . 확실히 한계가 있지만 때로는 매우 편리 할 수도 있습니다. PHP 5를 염두에두고 설계되었지만.


답변

좋은 var_dump를 얻는 가장 좋은 방법은 xDebug를 사용하는 것입니다 (모든 PHP 개발자가 필요합니다) Debian way install

콘솔에서 : 그 apt-get install php-xdebug
후 /etc/php/7.0/fpm/php.ini에 대해 php.ini를 열어야합니다 (사용하는 스택에 따라 다름)

검색 display_errors

동일하게 설정-> display_errors = On

html_errors같은 파일을 아래에서 조금 확인하십시오 .On

저장하고 종료

개봉 후 /etc/php/7.0/fpm/conf.d/20-xdebug.ini

그리고 끝에 추가하십시오 :“`xdebug.cli_color = 1

“`저장하고 종료하십시오.

xdebug에 대한 다른 많은 옵션과 문서는 여기에서 찾을 수 있습니다.

https://xdebug.org/docs/

행운을 빌고 재미있게 보내 !!!

결과


답변

debugVar()대신에 이것을 사용할 수 있습니다var_dump()

체크 아웃 : https://github.com/E1NSER/php-debug-function