将 HTML 插入 PHP DOMNode
要将 HTML 附加到现有 DOMNode 而不进行编码,请使用DOMDocumentFragment::appendXML.
// DOM setup $dom = new DOMDocument; $dom->loadXML('<html><body/></html>'); $body = $dom->documentElement->firstChild; // Append HTML fragment $template = $dom->createDocumentFragment(); $template->appendXML('<h1>This is <em>my</em> template</h1>'); $body->appendChild($template); // Output echo $dom->saveXml();
输出:
<?xml version="1.0"?> <html><body><h1>This is <em>my</em> template</h1></body></html>
从另一个 DOMDocument 导入
// Load another DOMDocument $tpl = new DOMDocument; $tpl->loadXML('<h1>This is <em>my</em> template</h1>'); // Import and append $body->appendChild($dom->importNode($tpl->documentElement, TRUE));
导入格式错误HTML
// Enable libxml error handling libxml_use_internal_errors(true); // Load and import HTML $tpl = new DOMDocument; $tpl->loadHtml('<h1>This is <em>malformed</em> template</h1></h2>'); $body->appendChild($dom->importNode($tpl->documentElement, TRUE)); // Disable libxml error handling libxml_use_internal_errors(false);
以上是如何在不编码的情况下将 HTML 附加到 PHP DOMNode?的详细内容。更多信息请关注PHP中文网其他相关文章!