PHP 8.4.0 RC4 available for testing

DOMDocument::adoptNode

(PHP >= 8.3)

DOMDocument::adoptNodeTransfer a node from another document

Description

public DOMDocument::adoptNode(DOMNode $node): DOMNode|false

Transfer a node from another document into the current document.

Parameters

node

The node to transfer.

Return Values

The node that was transfered, or false on error.

Errors/Exceptions

DOM_NOT_SUPPORTED_ERR

Raised if the node type is not supported for document transfers.

Examples

Example #1 DOMDocument::adoptNode() example

Transfers the hello element from the first document to the second one.

<?php
$doc1
= new DOMDocument;
$doc1->loadXML("<container><hello><world/></hello></container>");
$hello = $doc1->documentElement->firstChild;

$doc2 = new DOMDocument;
$doc2->loadXML("<root/>");
$doc2->documentElement->appendChild($doc2->adoptNode($hello));

echo
$doc1->saveXML() . PHP_EOL;
echo
$doc2->saveXML();
?>

The above example will output:

<?xml version="1.0"?>
<container/>

<?xml version="1.0"?>
<root><hello><world/></hello></root>

See Also

add a note

User Contributed Notes 1 note

up
0
Anonymous
1 month ago
Note that this function will remove the node from the original XML document
To Top