DOMNode::removeChild

(PHP 5)

DOMNode::removeChild Supprime un fils de la liste des enfants

Description

public DOMNode DOMNode::removeChild ( DOMNode $oldnode )

Cette fonction supprime un fils de la liste des enfants.

Liste de paramètres

oldnode

Le fils à effacer.

Valeurs de retour

Si le fils ne peut être effacé, la fonction retourne l'ancien fils.

Erreurs / Exceptions

DOM_NO_MODIFICATION_ALLOWED_ERR

Lancé si le noeud est en lecture seule.

DOM_NOT_FOUND

Lancé si oldnode n'est pas un fils de ce noeud.

Exemples

L'exemple suivant va effacer l'élément chapter de notre document XML.

Exemple #1 Effacement d'un fils

  1. <?php
  2.  
  3. $doc = new DOMDocument;
  4. $doc->load('book.xml');
  5.  
  6. $book = $doc->documentElement;
  7.  
  8. // Nous récupérons le chapitre et l'effaçons du livre
  9. $chapter = $book->getElementsByTagName('chapter')->item(0);
  10. $oldchapter = $book->removeChild($chapter);
  11.  
  12. echo $doc->saveXML();
  13. ?>
  1. <?php
  2.  
  3. $doc = new DOMDocument;
  4. $doc->load('book.xml');
  5.  
  6. $book = $doc->documentElement;
  7.  
  8. // Nous récupérons le chapitre et le supprimons du livre
  9. $chapter = $book->getElementsByTagName('chapter')->item(0);
  10.  
  11. // copie de l'URI de l'espace de noms
  12. $nsuri = $book->namespaceURI;
  13.  
  14. // Suppression du noeud enfant
  15. $book->removeChild($chapter);
  16.  
  17. // Collage de l'URI de l'espace de noms dans le noeud parent
  18. $book->namespaceURI = $nsuri;
  19. ?>

Notes

Note:

Après l'appel de cette méthode, l'attribut DOMNode::$namespaceURI du noeud parent sera remis à NULL. L'exemple ci-dessus montre comment contourner ce phénomène.

Voir aussi

LoadingChargement en cours