【发布时间】:2012-10-06 06:18:42
【问题描述】:
我有这个 html 代码:
<html>
<head>
...
</head>
<body>
<div>
<div class="foo" data-type="bar">
SOMECONTENTWITHMORETAGS
</div>
</div>
</body>
我已经可以使用这个函数获取“foo”元素(但只有它的内容):
private function get_html_from_node($node){
$html = '';
$children = $node->childNodes;
foreach ($children as $child) {
$tmp_doc = new DOMDocument();
$tmp_doc->appendChild($tmp_doc->importNode($child,true));
$html .= $tmp_doc->saveHTML();
}
return $html;
}
但我想返回 DOMElement 的所有 html 标签(包括它的属性)。我该怎么做?
【问题讨论】:
-
如果你想得到
html_from_nodeclass="foo"你做的不正确。有很多简单快捷的方法可以做到这一点。 -
@webbandit 我知道有更好的方法。请给我看!
-
注意:这不是重复的,因为它要求返回 DOMElement 的 html,而不是其他问题中的 DOMDocument,并且这些问题已经有不同的答案。
-
@kenorb 嘿,就是这样。根据定义,现在每个问题都是重复的????
标签: php dom domdocument dom-node