有没有将源html附加到DOMElement的方法?像这样:如何将源html添加到PHP中的DOMElement?
$trElement->appendSource("<a href='?select_user=4'>Username</a>");
它会解析该片段,然后将其附加。
有没有将源html附加到DOMElement的方法?像这样:如何将源html添加到PHP中的DOMElement?
$trElement->appendSource("<a href='?select_user=4'>Username</a>");
它会解析该片段,然后将其附加。
您从手动寻找
- DOMDocumentFragment::appendXML
— Append raw XML data
例子:
$doc = new DOMDocument();
$doc->loadXML("<root/>");
$f = $doc->createDocumentFragment();
$f->appendXML("<foo>text</foo><bar>text2</bar>");
$doc->documentElement->appendChild($f);
echo $doc->saveXML();
如果你没有在范围document root一个参考,你可以随时通过ownerDocument
访问任意节点的属性:
$frag = $trElement->ownerDocument->createDocumentFragment();
$frag->appendXML("<a href='?select_user=4'>Username</a>");
$trElement->appendChild($frag);
是的,你可以用DOMDocument::createDocumentFragment
做到这一点:
$fragment = $dom->createDocumentFragment();
$fragment->appendXML('<a href="select_user=4">Username</a>');
$element->appendChild($fragment);
在这种情况下,它会更简单与正常createElement
调用做到这一点:
$el = $dom->createElement('a', 'Username');
$el->setAttribute('href', 'select_user=4');
$element->appendChild($el);
在每种情况下,$element
是DOM您要附加代码的元素。
谢谢,它的工作就像一个魅力! – fabio 2011-01-20 19:25:51
注意:您的HTML输入必须也是有效的XML,否则您将收到错误。我这样做的方式是创建另一个文档,将HTML加载到该文档中(作为HTML,而不是XML),然后将新创建的节点深入导入到我的原始文档中。 – 2014-09-11 01:02:43