(PHP 5, PHP 7)
DOMDocument::importNode — Importa un nodo dentro del documento actual
Esta función devuelve una copia del nodo a importar y le asocia con el documento actual.
importedNode
El nodo que desea importar
deep
Si se establece en TRUE
, este método importará de forma recursiva el subárbol
bajo el importedNode
.
Nota:
Para copiar los atributos de los nodos
deep
debe establecerse aTRUE
El nodo copiado o FALSE
, si no puede ser copiado.
DOMException es lanzado si el nodo no puede ser importado.
Ejemplo #1 DOMDocument::importNode() ejemplo
Copiando nodos entre documentos.
<?php
$orgdoc = new DOMDocument;
$orgdoc->loadXML("<root><element><child>text in child</child></element></root>");
// El nodo que se quiere importar al nuevo documento
$node = $orgdoc->getElementsByTagName("element")->item(0);
// Crear un nuevo documento
$newdoc = new DOMDocument;
$newdoc->formatOutput = true;
// Agregar marcado
$newdoc->loadXML("<root><someelement>text in some element</someelement></root>");
echo "The 'new document' before copying nodes into it:\n";
echo $newdoc->saveXML();
// Importar el nodo y todos sus hijos al documento
$node = $newdoc->importNode($node, true);
// y entonces anexarlo a el nodo "<root>"
$newdoc->documentElement->appendChild($node);
echo "\nThe 'new document' after copying the nodes into it:\n";
echo $newdoc->saveXML();
?>
El resultado del ejemplo sería:
The 'new document' before copying nodes into it: <?xml version="1.0"?> <root> <someelement>text in some element</someelement> </root> The 'new document' after copying the nodes into it: <?xml version="1.0"?> <root> <someelement>text in some element</someelement> <element> <child>text in child</child> </element> </root>