# DOMElement::replaceWith

(PHP 8)

DOMElement::replaceWith — Remplace l'élément par de nouveaux nœuds

### Description

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

Remaplce l'élément par de nouveaux `nodes`.

### Liste de paramètres

`nodes`

  Les nœuds de remplacement.

### Valeurs de retour

Aucune valeur n'est retournée.

### Erreurs / Exceptions

`DOM_HIERARCHY_REQUEST_ERR`

  Levée si le parent est d'un type qui n'autorise pas les enfants du type de l'un des `nodes` transmis, ou si le nœud à insérer est l'un des ancêtres de ce nœud ou ce nœud lui-même.

`DOM_WRONG_DOCUMENT_ERR`

  Levée si l'un des `nodes` transmis a été créé à partir d'un document différent de celui qui a créé ce nœud.

### Historique

Version | Description
--- | ---
8.3.0 | Appeler cette méthode sur un nœud sans parent est désormais une opération sans effet pour aligner le comportement avec la spécification du DOM. Auparavant, cela déclenchait une DOMException avec le code `DOM_HIERARCHY_REQUEST_ERR`.

### Exemples

Exemple #1 Exemple de DOMElement::replaceWith()

Remplace l'élément par de nouveaux nœuds.

`<?php
$doc = new DOMDocument;
$doc->loadXML("<container><hello/></container>");
$cdata = $doc->documentElement->firstChild;
$cdata->replaceWith("beautiful", $doc->createElement("world"));
echo $doc->saveXML();
?>`

L'exemple ci-dessus va afficher :

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

### Voir aussi

- DOMChildNode::replaceWith() - Remplace le nœud par de nouveaux nœuds
- DOMElement::replaceChildren() - Remplace les enfants dans l'élément
- DOMElement::after() - Ajoute des noeuds après l'élément
- DOMElement::before() - Ajoute des noeuds avant l'élément
- DOMElement::remove() - Enlève l'élément