(PHP 5, PHP 7, PHP 8)
DOMDocument::importNode — Importa um nó para o documento atual
Esta função retorna uma cópia do nó a ser importado e o associa com o documento atual.
O nó copiado ou false
, se não puder ser copiado.
DOMException é lançado se o nó não puder ser importado.
Exemplo #1 Exemplo de DOMDocument::importNode()
Copiando nós entre documentos.
<?php
$orgdoc = new DOMDocument;
$orgdoc->loadXML("<raiz><elemento><filho>texto no filho</filho></elemento></raiz>");
// O nó que queremos importar para um novo documento
$node = $orgdoc->getElementsByTagName("elemento")->item(0);
// Crie um novo documento
$newdoc = new DOMDocument;
$newdoc->formatOutput = true;
// Adicione alguma marcação
$newdoc->loadXML("<raiz><algumelemento>texto em algum elemento</algumelemento></raiz>");
echo "O 'novo documento' antes de copiar nós nele:\n";
echo $newdoc->saveXML();
// Importe o nó, e todos os seus filhos, para o documento
$node = $newdoc->importNode($node, true);
// E então acrescente-o ao nó "<raiz>"
$newdoc->documentElement->appendChild($node);
echo "\nO 'novo documento' após copiar nós nele:\n";
echo $newdoc->saveXML();
?>
O exemplo acima produzirá:
O 'novo documento' antes de copiar nós nele: <?xml version="1.0"?> <raiz> <algumelemento>texto em algum elemento</algumelemento> </raiz> O 'novo documento' após copiar nós nele: <?xml version="1.0"?> <raiz> <algumelemento>texto em algum elemento</algumelemento> <elemento> <filho>texto no filho</filho> </elemento> </raiz>