2012-07-31 37 views
2

我試圖使用htmlspecialchars_decode(),但它不會將 解碼爲空格。這個問題有什麼解決辦法嗎?htmlspecialchars_decode()不能用空格工作

我的代碼:

$query = mysql_query("select * from nowosci order by id desc limit 0,3"); 
while($rekord = mysql_fetch_array($query)) 
{ 
$tekst .= '<h1 class="body"><div class="date" style="display:inline; color:grey; margin-right:5px;">'.$rekord[3].'</div>'.html_entity_decode($rekord[1]).'</h1><div class="main">'.html_entity_decode($rekord[2]).'</div>'; 
} 
echo $tekst 
+0

您不能進行替換(「 」,「」,$ str);之後? – 2012-07-31 10:08:09

+0

我仔細檢查了'var_dump($ rekord [1]);'和'var_dump($ rekord [2]);'包含'$ rekord [1]'和'$ rekord [2]'的內容。 – TechNyquist 2016-05-06 13:23:20

回答

3

使用html_entity_decode()代替。

htmlspecialchars_decode()僅解碼&amp; &quot; (when ENT_NOQUOTES is not set), &#039; (when ENT_QUOTES is set), &lt; and &gt;.

+0

它也不起作用。 – user192012 2012-07-31 10:11:51

+0

@ user192012請發佈您的代碼。 – 2012-07-31 10:14:58

+0

@ user192012,html_entity_decode()應該解碼' '。你確定輸入字符串沒有被編碼兩次嗎? – 2012-07-31 10:15:35

0

htmlspecialchars_decode()解碼htmlspecialchars和它不應該解碼&nbsp;,因爲這不屬於htmlspecialchars。你可以看看htmlspecialchars list。您可以改用html_entity_decode();