反向htmlspecialchars

时间:2012-06-29 06:45:19

标签: php htmlspecialchars

这似乎是一个简单的问题,但我无法在档案中找到它。

如何扭转htmlspecialchars的影响?

我试过这样的事情:

$trans_tbl = get_html_translation_table (HTML_ENTITIES);
$trans_tbl = array_flip ($trans_tbl);
$html = strtr ($html, $trans_tbl);

但它不起作用。有一个简单的方法吗?

4 个答案:

答案 0 :(得分:68)

使用htmlspecialchars_decode()

<?php
$str = "<p>this -&gt; &quot;</p>\n";

echo htmlspecialchars_decode($str);

// note that here the quotes aren't converted
echo htmlspecialchars_decode($str, ENT_NOQUOTES);
?>

参考 - PHP Official Doc

答案 1 :(得分:4)

您需要htmlspecialchars_decode()。请参阅PHP docu on this

$html = htmlspecialchars_decode( $html, ENT_NOQUOTES );

答案 2 :(得分:4)

示例:

echo htmlspecialchars_decode(htmlspecialchars('your "strange" text with characters like !"/$%?&*'))

它会回应: 您的“奇怪”文字,包含!“/ $%?&amp; *

等字符

这是编码/解码的一个例子。有用。

答案 3 :(得分:0)

根据我的理解,您需要htmlspecialchars_decode - Docu