나는 내 작은 웹 응용 프로그램의 리팩토링을 다루고 있었다. 밤새. 오늘 테스트를 시작했을 때, 내가 발견 한 첫 번째 버그는 시스템 PHP 함수 nl2br()
에 문제가있었습니다. 내 로컬 호스트에PHP 함수에서 이상한 동작 nl2br
나는 PHP 버전을 5.2.9을하고 난 버전에서 PHP site에 참조로 4.0.5nl2br()
준수 XHTML입니다.
그럼 왜 내 nl2br()
반환 <br>
<br />
대신 false로 설정된 두 번째 인수없이 반환 이해하지 않습니다. 나는 당신이이 기능을 달성하기 위해 노력하고 이해 확실하지 않다
public function eliminateTags($msg) {
$setBrakes = nl2br($msg);
$decodeHTML = htmlspecialchars_decode($setBrakes);
# Check PHP version
if((int)version_compare(PHP_VERSION, '4.0.5') == 1) {
$withoutTags = strip_tags($decodeHTML, '<br />');
} else {
$withoutTags = strip_tags($decodeHTML, '<br>');
}
return $withoutTags;
}
나는 최신 PHP 5.2로 이것을 재현 할 수 없다고 말할 수 없다. changelog는 이것에 관해 아무 말도하지 않는다. 이 문제를 재현하는 스크립트가 있습니까? – Artefacto
br 태그를 어떻게 확인하고 있습니까? # Firebug (또는 이와 유사한 도구)를 사용하고 있습니까? # 스크립트로 생성 된 파일을 찾고 있습니까? # 스크립트로 생성 된 문자열을 확인하고 있습니까? – Eineki
나를 위해 기본값으로 '
'을 사용하고, 5.3.2를 사용합니다. –