我想找到最好的方法来从字符串中去除所有的html标签,以保持纯文本。现在最简单的方法是strip_tags
,但它不是最佳的,因为它不能很好地处理破损的标签等。我认为我需要的是一个DOM解析器。但我不知道这件事情如何工作。PHP删除所有的html标签,并保持与DOM解析器纯文本
,比如我有一个简单的字符串:
<p>
<strong>
Some plain text
</strong>
</p>
我想去除所有与DOM解析器的标签,并保持纯文本:
Some plain text
我怎样才能做到这一点?我试图用removeChild之,但它消除一切甚至文本:
$dom = new DOMDocument();
$dom->loadHTML($translation->text);
foreach ($dom->getElementsByTagName("*") as $tag) {
$tag->parentNode->removeChild($tag);
};
'$ dom-> textContent' ...您可能需要修剪该值,因为它保留了原始的元素间空白。 – CBroe
使用php strip_tags功能http://php.net/manual/es/function.strip-tags.php – lucianov88