我正在尝试禁用超链接并使用HTMLPurifier以纯文本显示它们,但我没有做对。这是我的代码:
$html ='<a href="http://www.localhost.com/">link</a><b>test</b>';
require_once 'include/htmlpurifier/library/HTMLPurifier.auto.php';
$Config = HTMLPurifier_Config::createDefault();
$Config->set('AutoFormat.DisplayLinkURI', true);
$purifier = new HTMLPurifier();
$html = $purifier->purify($html);
echo $html;
目前的输出是:
<a href="http://www.localhost.com/">link</a><b>test</b>
有什么问题?输出应为:
<a>link</a> (http://www.localhost.com/)<b>test</b>
答案 0 :(得分:2)
第一个问题:您没有将配置对象传递给HTML Purifier构造函数,因此它不起作用。
第二个问题:您实际上没有告诉HTML Purifier从标记中删除href属性。如果你这样做,我不确定DisplayLinkURI会发生什么。