我找到了一些提到这个问题的帖子,但没有一个帖子完全解决了.
我需要的函数将输出内容,以htmlentities()的方式转换所有特殊字符,但保留所有html标签.
我尝试了很多不同的方法,但正如我上面提到的 – 它们都没有按预期工作.
我想知道是否有办法使用PHP类DomDocument.
我尝试使用以下方法:
$objDom = new DOMDocument('1.0', 'utf-8');
$objDom->loadhtml($content);
return $objDom->savehtml();
哪个有效,但它也增加了页面的整个结构,即
我只需要转换$content变量的内容并完成工作.
另一件值得一提的是,$content也可能会将一些字符转换为xhtml投诉 – 因为它来自Wysiwyg.所以它可能包含&等等,也应该保留.
任何人都知道使用DomDocument做到这一点的方法 – 也许我应该使用不同的保存方法?
好的 – 我想出了以下内容 – 不是很好,但确实有以下几点:
$objDom = new DOMDocument('1.0', 'UTF-8');
$objDom->loadHTML($string);
$output = $objDom->saveXML($objDom->documentElement);
$output = str_replace('
', '', $output);$output = str_replace('', '', $output);
$output = str_replace(' ', '', $output);
return $output;
任何更好的想法将不胜感激.