DOMParentNode::replaceChildren

(PHP 8 >= 8.3.0)

DOMParentNode::replaceChildren β€” ЗамСняСт ΠΏΠΎΡ‚ΠΎΠΌΠΊΠΎΠ² Π² ΡƒΠ·Π»Π΅

ОписаниС

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

ЗамСняСт ΠΏΠΎΡ‚ΠΎΠΌΠΊΠΎΠ² Π² ΡƒΠ·Π»Π΅.

Бписок ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ²

nodes

Π£Π·Π»Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ Π±ΡƒΠ΄ΡƒΡ‚ Π·Π°ΠΌΠ΅Π½Π΅Π½Ρ‹ ΠΏΠΎΡ‚ΠΎΠΌΠΊΠΈ. Π‘Ρ‚Ρ€ΠΎΠΊΠΈ автоматичСски ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Ρ‹Π²Π°ΡŽΡ‚ΡΡ Π² тСкстовыС ΡƒΠ·Π»Ρ‹.

Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΡ‹Π΅ значСния

Ѐункция Π½Π΅ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ значСния послС выполнСния.

Ошибки

DOM_HIERARCHY_REQUEST_ERR
Π’ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚, Ссли Ρ‚ΠΈΠΏ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ· ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Π½Ρ‹Ρ… Π² ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π΅ nodes элСмСнтов Π½Π΅ допускаСтся Π² Ρ‚ΠΈΠΏΠ΅ ΡƒΠ·Π»Π°, ΠΈΠ»ΠΈ Ссли добавляСмый ΡƒΠ·Π΅Π» являСтся ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· ΠΏΡ€Π΅Π΄ΠΊΠΎΠ² этого ΡƒΠ·Π»Π° ΠΈΠ»ΠΈ самим этим ΡƒΠ·Π»ΠΎΠΌ.
DOM_WRONG_DOCUMENT_ERR
Π’ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚, Ссли ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Π½Ρ‹Ρ… Π² ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π΅ nodes элСмСнтов Π±Ρ‹Π» создан ΠΈΠ· Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°, ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎΠ³ΠΎ ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π±Ρ‹Π» создан этот ΡƒΠ·Π΅Π».

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

ВСрсия ОписаниС
8.3.0 Π’Ρ‹Π·ΠΎΠ² ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π½Π° ΡƒΠ·Π»Π΅ Π±Π΅Π· Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π° Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚. РаньшС ΠΌΠ΅Ρ‚ΠΎΠ΄ выбрасывал ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ DOMException с ΠΊΠΎΠ΄ΠΎΠΌ DOM_HIERARCHY_REQUEST_ERR.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ #1 ΠŸΡ€ΠΈΠΌΠ΅Ρ€ использования ΠΌΠ΅Ρ‚ΠΎΠ΄Π° DOMParentNode::replaceChildren()

<?php

$dom
= new DOMDocument();
$dom->loadHTML('<!DOCTYPE HTML><html><p>ΠŸΡ€ΠΈΠ²Π΅Ρ‚!</p> ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° <p>Π‘Π½ΠΎΠ²Π° ΠΏΡ€ΠΈΠ²Π΅Ρ‚!</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>
οΌ‹Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΡ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ

ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ Π΅Ρ‰Ρ‘ Π½Π΅ добавляли примСчания для страницы