Statement on glibc/iconv Vulnerability

DOMElement::replaceChildren

(PHP 8 >= 8.3.0)

DOMElement::replaceChildrenЗаменяет дочерние элементы в элементе

Описание

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

Заменяет дочерние элементы элемента новыми узлами nodes.

Список параметров

nodes

Узлы, которыми будут заменены потомки. Строки автоматически преобразовываются в текстовые узлы.

Возвращаемые значения

Функция не возвращает значения после выполнения.

Ошибки

DOM_HIERARCHY_REQUEST_ERR

Возникает, если тип одного из переданных в параметре nodes элементов не допускается в типе узла, или если добавляемый узел является одним из предков этого узла или самим этим узлом.

DOM_WRONG_DOCUMENT_ERR

Возникает, если один из переданных в параметре nodes элементов был создан из документа, отличного от того, в котором был создан этот узел.

Список изменений

Версия Описание
8.3.0 Вызов метода на узле без документа владельца теперь работает. Ранее это выбрасывало исключение DOMException с кодом DOM_HIERARCHY_REQUEST_ERR.

Примеры

Пример #1 Пример использования метода DOMElement::replaceChildren()

Замена дочерних узлов новыми.

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

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

echo
$doc->saveXML();
?>

Результат выполнения приведённого примера:

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

Смотрите также

add a note

User Contributed Notes

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