$str = '<div style="text-align:center"><img src="http://image.gif" border="0">';
echo html_entity_decode($str,ENT_COMPAT, 'UTF-8');
输出相同:
<div style="text-align:center"><img src="http://image.gif" border="0">
我期待:
<div style="text-align:center"><img src="http://image.gif" border="0"></div>
这已被双重编码,因此您需要解码两倍,&
需要解码到&
才能获得<
等...
echo html_entity_decode(html_entity_decode($str));
如果您正在执行编码,请查看 htmlspecialchars()
和 htmlentities()
的 $double_encode
参数。
如果多次编码,则可以使用:
while(($str = html_entity_decode($str)) != $str) {}
echo $str;
尝试使用 "htmlspecialchars_decode(("
而不是 "html_entity_decode((">
htmlspecialchars_decode