2012-09-27 50 views
1

我想檢查字符串是否是有效的xhtml/html。 我有一些html字符串通過tinymce編輯器。我想在第一次將它保存到mysql數據庫之前檢查這個html字符串是否有效。我想PHP整齊庫:刪除回車字符從PHP tidy修復html字符串

$html = '<div> <a href="#">a link</a> this is test <p>close tag error</p> </p> <p></p>'; 
    $tidy = new \tidy(); 
    $clean = $tidy->repairString($html,array(
     'output-xml' => true, 
     'input-xml' => true 
    )); 

但它輸出這樣的:

<div>\n<a href="#">a link</a>this is test \n<p>close tag error</p>other text \n<p></p></div> 

使代碼正常關閉,但整潔PUT/n個字符。 如何修復html無回車符?

回答

0

您需要使用htmlspecialhars_decode()來禁用的特殊字符顯示...

$clean = htmlspecialchars_decode($clean); 
2

雖然不是完美的(因爲它可以摧毀任何實際carridge回報你)快速的答案是:

$string = str_replace('\n', '', $originalString); 
+1

'str_replace('\ n','',$ originalString);'將只刪除文本中的\ n字符串。真正的Carridge返回字符將保持機智,除非像這樣使用雙引號:'str_replace(「\ n」,'',$ originalString);' –