array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'fr', ), 'this' => array ( 0 => 'domdocument.importnode.php', 1 => 'DOMDocument::importNode', ), 'up' => array ( 0 => 'class.domdocument.php', 1 => 'DOMDocument', ), 'prev' => array ( 0 => 'domdocument.getelementsbytagnamens.php', 1 => 'DOMDocument::getElementsByTagNameNS', ), 'next' => array ( 0 => 'domdocument.load.php', 1 => 'DOMDocument::load', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'fr', 'path' => 'reference/dom/domdocument/importnode.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PHP 5, PHP 7, PHP 8)
DOMDocument::importNode — Importe un nœud dans le document courant
Cette fonction retourne une copie du nœud à importer et l'associe avec le document courant.
Le nœud copié ou false
si la copie a échouée.
Une DOMException est lancée si le nœud ne peut pas être importé.
Exemple #1 Exemple avec DOMDocument::importNode()
Copie de nœuds entre plusieurs documents.
<?php
$orgdoc = new DOMDocument;
$orgdoc->loadXML("<root><element><child>Texte dans un fils</child></element></root>");
// Le nœud que nous voulons importer dans le nouveau document
$node = $orgdoc->getElementsByTagName("element")->item(0);
// Création du nouveau document
$newdoc = new DOMDocument;
$newdoc->formatOutput = true;
// Ajout de quelques balises
$newdoc->loadXML("<root><someelement>Texte dans un élément</someelement></root>");
echo "Le nouveau document avant d'y copier le nœud :\n";
echo $newdoc->saveXML();
// Importation du nœud, ainsi que tous ses files, dans le document
$node = $newdoc->importNode($node, true);
// Et on l'ajoute dans le le nœud racine "<root>"
$newdoc->documentElement->appendChild($node);
echo "\nLe nouveau document après y avoir copié les nœuds :\n";
echo $newdoc->saveXML();
?>
L'exemple ci-dessus va afficher :
Le nouveau document avant d'y copier le nœud : <?xml version="1.0"?> <root> <someelement>Texte dans un élément</someelement> </root> Le nouveau document après y avoir copié les nœuds : <?xml version="1.0"?> <root> <someelement>Texte dans un élément</someelement> <element> <child>Texte dans un fils</child> </element> </root>