DOMDocument::importNode

(PHP 5, PHP 7)

DOMDocument::importNodeImport node into current document

Beschreibung

public DOMDocument::importNode ( DOMNode $importedNode [, bool $deep = FALSE ] ) : DOMNode

This function returns a copy of the node to import and associates it with the current document.

Parameter-Liste

importedNode

The node to import.

deep

If set to TRUE, this method will recursively import the subtree under the importedNode.

Hinweis:

To copy the nodes attributes deep needs to be set to TRUE

Rückgabewerte

The copied node or FALSE, if it cannot be copied.

Fehler/Exceptions

DOMException is thrown if node cannot be imported.

Beispiele

Beispiel #1 DOMDocument::importNode() example

Copying nodes between documents.

<?php

$orgdoc 
= new DOMDocument;
$orgdoc->loadXML("<root><element><child>text in child</child></element></root>");

// The node we want to import to a new document
$node $orgdoc->getElementsByTagName("element")->item(0);


// Create a new document
$newdoc = new DOMDocument;
$newdoc->formatOutput true;

// Add some markup
$newdoc->loadXML("<root><someelement>text in some element</someelement></root>");

echo 
"The 'new document' before copying nodes into it:\n";
echo 
$newdoc->saveXML();

// Import the node, and all its children, to the document
$node $newdoc->importNode($nodetrue);
// And then append it to the "<root>" node
$newdoc->documentElement->appendChild($node);

echo 
"\nThe 'new document' after copying the nodes into it:\n";
echo 
$newdoc->saveXML();
?>

Das oben gezeigte Beispiel erzeugt folgende Ausgabe:

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>