我有一个html节点的Domnodelist,我想回显它,包括它们的html标记,这样我就可以应用正则表达式了。当我这样做时:
foreach ($nodeList as $key => $node) {
echo $node->nodeValue;
}
我只得到节点的文本部分,没有html标记。
当我尝试时:
echo$node->saveHTML;
我得到错误:未定义的属性:DOMElement::$saveHTML
我该怎么做?
提前感谢
票据
saveHTML
是一个函数,因此需要调用它(缺少parens)。它也是DOMDocument
的一部分;节点将作为参数传入。
所以正确的形式是:
echo $document->saveHTML($node);
重要提示:saveHTML
仅支持PHP 5.3.6以后的参数。
然而,人们专门使用DOMDocument
,这样他们就可以在不使用正则表达式的情况下处理它。你似乎在试图做相反的事情。如果是这样的话,请重新考虑您的方法——正则表达式是一种处理HTML的方法,一旦您决定做任何不完全琐碎的事情,就会带来麻烦。