DOMElement::replaceWith

(PHP 8)

DOMElement::replaceWith用新节点替换元素

描述

public DOMElement::replaceWith(DOMNode|string ...$nodes): void

用新的 nodes 替换元素。

参数

nodes

替换节点。字符串会自动转换为文本节点。

返回值

没有返回值。

错误/异常

DOM_HIERARCHY_REQUEST_ERR

如果父节点的类型不允许传递的 nodes 中的节点类型作为子节点,或者如果要放置的节点是此节点的祖先节点或此节点本身,则会引发此异常。

DOM_WRONG_DOCUMENT_ERR

如果传递的 nodes 之一是使用与创建此节点不同的文档创建的,则会引发此异常。

变更日志

版本 描述
8.3.0 现在,对没有父节点的节点调用此方法将不再执行任何操作,以使行为与 DOM 规范保持一致。以前,这会抛出一个 DOMException,代码为 DOM_HIERARCHY_REQUEST_ERR

示例

示例 #1 DOMElement::replaceWith() 示例

用新的节点替换元素。

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

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

echo
$doc->saveXML();
?>

上面的示例将输出

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

参见

添加注释

用户贡献的注释

此页面没有用户贡献的注释。
To Top