2011-01-25 5 views
1

특정 페이지에서 첫 번째 HTML 태그 앞에 점 또는 공백을 추가하는 PHP 웹 사이트가 있습니다. 내가 어디에서 온지 알아낼 수 없다 - 나는 그것이 어디에서 오는 볼 수 있도록 코드를 디버깅하는 방법은 무엇입니까? 감사합니다. JoshPHP 출력 디버그

+5

문제가있는 페이지 코드를 제공해 주시겠습니까? –

+1

또는 URL에 대한 링크를 제공 할 수 있습니까 – robjmills

+0

방화범 웹 개발자 확장 기능이 도움이 될 수도 있습니다 –

답변

2

이 문제를 방지하려면 PHP 파일을 ?>으로 끝내지 않는 것이 좋습니다. 당신은 아마도 이런 식으로합니다 (?> 후 여분의 공간을주의) 일부 파일이

: 당신이 마지막에 ?>를 제거 할 경우

<?php 
    // Some code // 
?> 

를, 파일의 마지막에 여분의 공간 원 출력 할 것으로 해석되어야합니다.

에만 PHP 코드를 포함하는 파일의 경우

, 닫는 태그 ("?>")는 허용되지 않습니다 된다. 그것은 PHP에서 필요하지 않습니다. 을 생략하면 우연한 후행 흰색 공간이 응답에 삽입되지 않습니다.

출처 : 정말이 디버깅에 대한 갈 좋은 방법은 없습니다 http://framework.zend.com/manual/en/coding-standard.php-file-formatting.html

+2

-1 ** 끔찍하고 끔찍한 ** 조언. 어떤 상황에서도 절대로 결말을 포함해서는 안됩니까? 이제까지. –

+2

@Michael - 왜? 이것은 정말로 downvote를 정당화하기위한 설명으로 자격이되지 않습니다! –

+2

@Michael 왜 이렇게 말하는거야? 필자는 필자가 필자가 필자의 의견에 반드시 동의하는지 모르겠다. 실제로 젠드 (Zend) 코딩 표준은 PHP 코드 만 포함하는 파일에 그대로 두어야한다고 생각합니다. – jb1785

0

. 페이지가 부딪히는 모든 파일을 검토하고 출력물의 출처를 파악해야합니다. 당신이 정말로 그것에 대해 게으 르기를 원한다면 약간의 출력 버퍼링을 할 수 있지만, 이것은 올바른 방법이 아닙니다.

1

템플릿을 사용하고 있는지 확인해야 할 수도 있습니다 ... 문제가 메인 코드에있을 수도 있고 없을 수도 있습니다.

예는 PHP에서 종료 태그를 닫지 않기위한 좋은 실습입니다.

+0

안녕 ... 나를 믿지 마라. http://framework.zend.com/manual/en/coding-standard.php-file-formatting.html –

0

이 문제는 추적하기가 어려울 수 있습니다. 어떤 종류의 프레임 워크 나 시스템에 많은 파일이 포함되어 있다면 오류가 발생하기 전에 온라인에서 var_dump(get_included_files())을 시도해 볼 수 있습니다. 그러면 시작할 장소가 생깁니다. 충분하지 않다면, xdebug가 더 도움이 될 수 있습니다. PHP 태그 앞과 뒤의 공간과 출력을 보낼 수있는 함수가 있습니다.