将 HTML 实体转换为其适用的字符


Converting HTML entities to their applicable characters

$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>

这已被双重编码,因此您需要解码两倍,&amp;需要解码到&才能获得&lt;等...

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