DOMCharacterData::replaceWith

(PHP 8)

DOMCharacterData::replaceWithReplaces the character data with new nodes

Description

publicDOMCharacterData::replaceWith(DOMNode|string...$nodes): void

Replaces the character data with new nodes.

Parameters

nodes

The replacement nodes. Strings are automatically converted to text nodes.

Return Values

No value is returned.

Errors/Exceptions

DOM_HIERARCHY_REQUEST_ERR

Raised if the parent 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

VersionDescription
8.3.0 Calling this method on a node without a parent is now a no-op to align the behaviour with the DOM specification. Previously this threw a DOMException with code DOM_HIERARCHY_REQUEST_ERR.

Examples

Example #1 DOMCharacterData::replaceWith() example

Replaces the character data with new nodes.

<?php
$doc
= new DOMDocument;
$doc->loadXML("<container><![CDATA[hello]]></container>");
$cdata = $doc->documentElement->firstChild;

$cdata->replaceWith("beautiful", $doc->createElement("world"));

echo
$doc->saveXML();
?>

The above example will output:

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

See Also

To Top