PHP Conference Japan 2024

DOMCharacterData::replaceWith

(PHP 8)

DOMCharacterData::replaceWith用新节点替换字符数据

描述

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

用新的nodes替换字符数据。

参数

nodes

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

返回值

没有返回值。

错误/异常

DOM_HIERARCHY_REQUEST_ERR

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

DOM_WRONG_DOCUMENT_ERR

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

变更日志

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

示例

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

用新节点替换字符数据。

<?php
$doc
= new DOMDocument;
$doc->loadXML("<container><![CDATA[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