如何将源html附加到PHP中的DOMElement?

fab*_*bio 10 html php dom appendchild

有没有办法将源html附加到DOMElement?像这样的东西:

$trElement->appendSource("<a href='?select_user=4'>Username</a>");
Run Code Online (Sandbox Code Playgroud)

它将解析该片段然后追加它.

Gor*_*don 15

你在找

- DOMDocumentFragment::appendXML- 附加原始XML数据

手册示例:

$doc = new DOMDocument();
$doc->loadXML("<root/>");
$f = $doc->createDocumentFragment();
$f->appendXML("<foo>text</foo><bar>text2</bar>");
$doc->documentElement->appendChild($f);
echo $doc->saveXML(); 
Run Code Online (Sandbox Code Playgroud)

  • 注意:您的 HTML 输入也必须是有效的 XML,否则您将收到错误。我这样做的方法是创建另一个文档,将 HTML 加载到该文档中(作为 HTML,而不是 XML),然后将新创建的节点深度导入回我的原始文档中。 (2认同)

Dan*_*ugg 6

如果在作用域中没有对文档根的引用,则始终可以通过ownerDocument任意节点的属性访问它:

$frag = $trElement->ownerDocument->createDocumentFragment();
$frag->appendXML("<a href='?select_user=4'>Username</a>");
$trElement->appendChild($frag);
Run Code Online (Sandbox Code Playgroud)