Bonjour,

Je cherche à supprimer une branche de mon xml, sur la condition qu'elle contient un nœud avec un certain attribut.

Je trouve donc mes nœuds concernés avec une requête xpath, tout en ayant déjà chargé mon xml avec DOMDocument.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
$nodeList = $xpath->query( "//product[@code='HOP']/features/info/status[@code='0003']" );
Maintenant, j'aimerais bien supprimer les nœuds features que je trouve, c'est-à-dire ceux contenant un enfant info avec un enfant status ayant l'attribut code égal à 0003.

Seul soucis, j'arrive bien à supprimer l'enfant status mais je n'arrive pas à remonter à son grand-parent (features) pour le supprimer.

Voici la façon dont je supprime l'enfant status :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
        $nodeList = $xpath->query( "//product[@code='HOP']/features/info/status[@code='0003']" );
        foreach( $nodeList as $element )
        {
              $test = $element->parentNode->removeChild( $element );
       }
Une idée ?

Merci