我正在處理我的小型web應用程序的重構。整夜。今天當我開始測試時,我發現第一個bug是系統PHP函數nl2br()
的問題。功能nl2br PHP奇怪的行爲
在我的本地我有PHP版本5.2.9 和我對PHP site看到版本4.0.5nl2br()
是XHTML標準。
然後,我絕對不明白爲什麼我的nl2br()
返回<br>
沒有第二個參數設置爲false而不是<br />
。
這裏是我的方法,我發現這個bug:
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重現這個變化日誌沒有提到這一點。你有一個腳本能夠再現這個問題嗎? – Artefacto 2010-07-04 08:47:39
你如何檢查br標籤? #你使用的是Firebug(或類似的工具)嗎? #您是否在查看由腳本生成的文件? #你在檢查腳本生成的字符串嗎? – Eineki 2010-07-04 08:51:04
默認情況下,它使用'
',使用5.3.2。 – 2010-07-04 08:54:25