IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bibliothèques et frameworks PHP Discussion :

[DOM] Supprimer un noeud


Sujet :

Bibliothèques et frameworks PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Modérateur

    Avatar de MaitrePylos
    Homme Profil pro
    DBA
    Inscrit en
    Juin 2005
    Messages
    5 506
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Belgique

    Informations professionnelles :
    Activité : DBA
    Secteur : Service public

    Informations forums :
    Inscription : Juin 2005
    Messages : 5 506
    Par défaut [DOM] Supprimer un noeud
    Bonjour,

    J'ai suivi les autres post, pour supprimer un noeud, mais ici, je n'arrive à rien.

    soit le fichier xml suivant

    Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
     
    <?xml version="1.0" encoding="UTF-8"?>
    <pays_monde>
    	<hors_europe>
    		<pays><nom>
    			Afrique du Sud 
    				</nom><valeur>03</valeur>
    		</pays>
     
    		<pays><nom>
    			Afghanistan
    				</nom><valeur>03</valeur>
    		</pays>
     
    		<pays><nom>
    			Albanie 
    				</nom><valeur>03</valeur>
    		</pays>
     
    		<pays><nom>
    			Algérie 
    				</nom><valeur>03</valeur>
    		</pays>
     
    		<pays><nom>
    			Andorre 
    				</nom><valeur>03</valeur>
    		</pays>
     
    		<pays><nom>
    			Angola 
    				</nom><valeur>03</valeur>
    		</pays>
     
    		<pays><nom>
    			Antigua-et-Barbuda 
    				</nom><valeur>03</valeur>
    		</pays>
     
    		<pays><nom>
    			Arabie saoudite
    				</nom><valeur>03</valeur>
    		</pays>
     
    		<pays><nom>
    			Argentine 
    				</nom><valeur>03</valeur>
    		</pays>
     
    		<pays><nom>
    			Arménie 
    				</nom><valeur>03</valeur>
    		</pays>
     
    		<pays><nom>
    			Australie
    				</nom><valeur>03</valeur>
    		</pays>
     
    		<pays><nom>
    			Azerbaïdjan 
    				</nom><valeur>03</valeur>
    		</pays>
     
    		<pays><nom>
    			Bahamas 
    				</nom><valeur>03</valeur>
    		</pays>
     
     
     
    	</hors_europe>
     
    	<europe>
    		<pays><nom>
    			Autriche 
    				</nom><valeur>03</valeur>
    		</pays>
     
    		<pays><nom>
    			Allemagne
    				</nom><valeur>03</valeur>
    		</pays>
     
    		<pays><nom>
    			Bulgarie 
    				</nom><valeur>03</valeur>
    		</pays>
     
    	</europe>
    	<belgique>
    		<pays><nom>
    			Belgique
    				</nom><valeur>01</valeur>
    		</pays>
    	<pays>
              <nom>GgLand</nom>
             <valeur>10</valeur>
         </pays>
        <pays>
              <nom>FredLand</nom>
             <valeur>124</valeur></pays>
    </belgique>
     
    	<autre>
    		<pays><nom>
    			Apatride
    				</nom><valeur>04</valeur>
    		</pays>
     
    		<pays><nom>
    			Inconnu
    				</nom><valeur>04</valeur>
    		</pays>
    	      <pays>
                   <nom>non-inconnu</nom>
                  <valeur>16</valeur>
               </pays>
    </autre>
    </pays_monde>

    j'essaye de supprimer le troisième item de belgique

    je fais le code suivant

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    	$dom = new DOMDocument();
    		$dom->load(PAYS);
     
    		$elem = $dom->belgique->getElementsByTagName('pays')->item('2');
    		$elem->parentNode->removeChild($elem);
     
    		$dom->save(PAYS);
    Mais il signale que removeChild n'existe pas.

    J'arrive à la faire dans d'autres fichiers xml, mais ici j'ai un noeud supplémentaire (belgique,hors_europe,europe,autre).

    Je n'arrive pas à rentrer dans le noeud <belgique>.

    Merci de votre aide.

    MaitrePylos

  2. #2
    Modérateur

    Avatar de MaitrePylos
    Homme Profil pro
    DBA
    Inscrit en
    Juin 2005
    Messages
    5 506
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Belgique

    Informations professionnelles :
    Activité : DBA
    Secteur : Service public

    Informations forums :
    Inscription : Juin 2005
    Messages : 5 506
    Par défaut
    Ok, je l'ai fais avec simpleXml

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    $xml = simplexml_load_file(PAYS);
    unset($xml->belgique->pays[2]);
    echo $xml->asXML();

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [DOM] Supprimer un noeud d'un fichier XML
    Par popy67 dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 09/06/2008, 22h22
  2. [DOM] supprimer un noeud XML
    Par hicham285 dans le forum Bibliothèques et frameworks
    Réponses: 4
    Dernier message: 12/04/2008, 20h28
  3. [XML DOM]Supprimer plusieurs noeud
    Par Shandler dans le forum APIs
    Réponses: 9
    Dernier message: 06/06/2007, 19h30
  4. [DOM] supprimer un noeud avec une expression xpath
    Par Fab88 dans le forum Bibliothèques et frameworks
    Réponses: 5
    Dernier message: 01/06/2007, 11h45
  5. [PHP5][DOM]Supprimer le noeud courant
    Par panpan dans le forum XML/XSL et SOAP
    Réponses: 1
    Dernier message: 03/05/2006, 15h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo