CascadiaPHP 2024

DOMParentNode::replaceChildren

(PHP 8 >= 8.3.0)

DOMParentNode::replaceChildrenReplace children in node

Description

public DOMParentNode::replaceChildren(DOMNode|string ...$nodes): void

Replace children in node.

Parameters

nodes

The nodes replacing the children. Strings are automatically converted to text nodes.

Return Values

No value is returned.

Errors/Exceptions

DOM_HIERARCHY_REQUEST_ERR

Raised if this node is of a type that does not allow children of the type of one of the passed nodes, or if the node to put in is one of this node's ancestors or this node itself.

DOM_WRONG_DOCUMENT_ERR

Raised if one of the passed nodes was created from a different document than the one that created this node.

Changelog

Version Description
8.3.0 Calling this method on a node without an owner document now works. Previously this threw a DOMException with code DOM_HIERARCHY_REQUEST_ERR.

Examples

Example #1 DOMParentNode::replaceChildren() example

<?php

$dom
= new DOMDocument();
$dom->loadHTML('<!DOCTYPE HTML><html><p>hi</p> test <p>hi2</p></html>');

$dom->documentElement->replaceChildren('foo', $dom->createElement('p'), 'bar');
echo
$dom->saveXML();
?>

The above example will output:

<?xml version="1.0" standalone="yes"?>
<!DOCTYPE HTML>
<html>foo<p/>bar</html>
add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top