实现html字符串获取子元素以及清空子元素
admin · 技术文章 · 2024年09月27日

获取子元素,包含自身

$dom = new DOMDocument();

$dom->loadHTML('<?xml encoding="UTF-8">' . $html, LIBXML_HTML_NOIMPLIED | LIBXML_HTML_NODEFDTD);

$xpath = new DOMXPath($dom);

// 使用 XPath 选择具有特定 codev_name 属性的 div

$div = $xpath->query('//div[@codev_name="列表组件"]')[0];

// 使用 saveHTML 方法获取包含 div 元素的完整 HTML 字符串

$content = $dom->saveHTML($div);

// 输出结果

echo $content;


清空所有子节点


$dom = new DOMDocument();

$dom->loadHTML('<?xml encoding="UTF-8">' . $html, LIBXML_HTML_NOIMPLIED | LIBXML_HTML_NODEFDTD);

$xpath = new DOMXPath($dom);

// 使用 XPath 选择具有特定 codev_name 属性的 div

$div = $xpath->query('//div[@codev_name="列表组件"]')[0];

// 清空 div 的所有子节点

while ($div->firstChild) {

    $div->removeChild($div->firstChild);

}

// 现在 div 是空的,但我们可以获取包含它的完整 HTML 字符串(没有子节点)

$content = $dom->saveHTML($div);

// 输出结果

echo $content;


标签1 ( 15 )
标签2 ( 12 )
标签3 ( 4 )
标签4 ( 2 )
标签5 ( 7 )
标签6 ( 5 )
标签 ( 2 )