【发布时间】:2016-11-01 19:13:18
【问题描述】:
有什么方法可以在不使用正则表达式的情况下从 html 中删除所有空元素?
我用DOMXPath 做到了这一点
$this->dom->loadHTML($document, LIBXML_HTML_NOIMPLIED | LIBXML_HTML_NODEFDTD);
$xpath = new \DOMXPath($this->dom);
while (($node_list = $xpath->query('//*[not(*) and not(@*) and not(text()[normalize-space()])]')) && $node_list->length) {
foreach ($node_list as $node) {
$node->parentNode->removeChild($node);
}
}
【问题讨论】:
-
您应该能够在标记时使用 domdocument。您有一些遇到问题的代码吗?
标签: php domdocument