PHP Conference Japan 2024

DOMParentNode::replaceChildren

(PHP 8 >= 8.3.0)

DOMParentNode::replaceChildren替换节点中的子节点

描述

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

替换节点中的子节点。

参数

nodes

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

返回值

不返回任何值。

错误/异常

DOM_HIERARCHY_REQUEST_ERR

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

DOM_WRONG_DOCUMENT_ERR

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

变更日志

版本 描述
8.3.0 现在可以在没有所有者文档的节点上调用此方法。以前这会抛出一个代码为 DOM_HIERARCHY_REQUEST_ERRDOMException 异常。

示例

示例 #1 DOMParentNode::replaceChildren() 示例

<?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();
?>

以上示例将输出

<?xml version="1.0" standalone="yes"?>
<!DOCTYPE HTML>
<html>foo<p/>bar</html>
添加注释

用户贡献注释

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