2009-10-07 4 views
2

comment puis-je obtenir la liste des enfants dans xml-> demande-> ABC ABC peut avoir DEF, ZZA, XAS, ETC et je voudrais parcourir une liste de ces enfants (nom requis) au lieu de vérifier si elles existent.obtenir la liste des enfants dans SimpleXMLElement PHP

-edit- Note: Je cherche le nom de l'élément. J'ai trouvé un exemple qui retourne un attribut SI c'est connu. Comment puis-je obtenir le nom de l'étiquette/de l'élément?

+0

S'il vous plaît poster le code XML qui est chargé dans SimpleXMLElement – eveliotc

Répondre

3

Considérant ce morceau de XML et le code pour le charger avec SimpleXML:

$str = <<<XML 
<xml> 
    <request> 
     <ABC> 
      <DEF>glop</DEF> 
      <ZZA>test</ZZA> 
     </ABC> 
    </request> 
</xml> 
XML; 
$xml = simplexml_load_string($str); 

Qu'en est-il en utilisant la méthode children() pour obtenir la liste de tous les enfants de vous élément ABC, et la boucle sur eux avec un foreach ?

De cette façon, par exemple:

foreach ($xml->request->ABC->children() as $a => $b) { 
    echo "$a $b<br />"; 
} 

Et vous obtiendrez ce genre de sortie:

DEF glop 
ZZA test 
Questions connexes