2011-09-21 2 views
0

Zend_Debug :: dump를 사용하여 변수를 Zend_Log 파일에 덤프합니다. 출력을 HTML 태그로 래핑하는 것을 멈추게하려면 어떻게해야합니까?Zend_Debug HTML 태그를 Zend_Log 밖으로 유지하는 방법

"출력 스트림이 웹 프레젠테이션으로 감지되면 var_dump()의 출력이»htmlspecialchars()를 사용하여 이스케이프되고 (X) HTML 태그로 래핑됩니다."라는 문구가 있습니다. 내 로그 파일이 웹 프레젠테이션이라고 생각하는 이유는 무엇입니까?

덤프 함수의 메소드에는 부울 $ echo 플래그가 있습니다. 이것이 FALSE 일 때라도 로그 파일에 HTML 마크 업을 얻습니다.

도움 주셔서 감사합니다.

답변

1

Zend Debug는 항상 htmlspecialchars()를 사용하여 인용합니다. 제공된 매개 변수로 비활성화 할 수 없습니다.

"echo"에 대한 부울은 브라우저에 인쇄하는 var_dump() (Zend_Debug에서 사용됨)를 비활성화하는 데에만 사용됩니다.

코드 Zend_Debug에서 :: 덤프() :

$ 출력 = 반드시 htmlspecialchars ($ 출력, ENT_QUOTES);

if (self::getSapi() == 'cli') { 
     $output = PHP_EOL . $label 
       . PHP_EOL . $output 
       . PHP_EOL; 
    } else { 
     if(!extension_loaded('xdebug')) { 
      $output = htmlspecialchars($output, ENT_QUOTES); 
     } 

     $output = '<pre>' 
       . $label 
       . $output 
       . '</pre>'; 
    } 
+0

감사합니다. 로그를 검토 할 때 html 태그를 그냥 지나치 는가? 아니면 DB에 로그인합니까? –

+0

아니요 : error_log (print_r ($ error, true)); 젠드 디버그 대신;) – opHASnoNAME