HTMLPurifier转换>到>

时间:2012-12-21 01:39:56

标签: php htmlpurifier

我正在使用带有输入textarea的HTMLPurifier,允许用户放置他们的HTML标记。配置是默认值:

        $config = HTMLPurifier_Config::createDefault();
        $purifier = new HTMLPurifier($config);
        $_POST['txt'] = $purifier->purify($_POST['txt']);

我遇到的问题是用户在文本中放置了一些>,例如:

<p>Some text > other text </p>

这会转换为:

<p>Some text &gt; other text </p>

有没有办法阻止转换?没有忘记:

$_POST['txt'] = str_replace('&gt;','>',$_POST['txt']);

2 个答案:

答案 0 :(得分:1)

因为您可能知道&gt;的{​​{1}} html特殊字符。浏览器将正确渲染所有内容。

您可以尝试使用htmlspecialchars_decode将所有特殊字符解码为原始值。

答案 1 :(得分:1)

如果未发生此转换,则HTML将无效。如果这就是你想要的,那么可能有一个配置选项。