Bonjour,
Après avoir essayer tout ce que j'ai pu trouver.. Je ne trouve pas la solution à mon problème. Je dois récupérer une valeur dans un flux xml chargé sur la même page.
Pas de problème pour récupérer les valeurs des éléments parent de premier niveau. Mais impossible d'accéder aux "enfants"...
Mon xml est dans une variable $response
code xml
<?xml version="1.0" encoding="UTF-8"?>
<response>
<content>
<objetList>
<objet>
<status>disponible</status>
<name>nom de l'objet</name>
</objet>
</objetList>
</content>
</response>
Je souhaite récupérer la valeur de la balise status et name.
Voici ce que j'ai essayé
$simplexml = simplexml_load_string($response);
$status = $simplexml->content->objetList->objet;
print "status: {$status->status} <br />\n";
Résultat : Affiche uniquement "status:"
Autre essai :
$simplexml = simplexml_load_string($response);
foreach ($simplexml->content as $content) {
foreach ($content->objetList as $objetList) {
foreach ($objetList->objet as $objet) {
print "status : {$objet->status} <br />\n";
}
}
}
Sachant que le code ci-dessous me renvoi bien l'ensemble des données présentes dans le xml
<?php
// affiche le contenu de notre object simplexml
print_r($simplexml);
?>
J'ai aussi essayé avec :
$simpleXml = new SimpleXMLElement($response);
à la place de
$simplexml = simplexml_load_string($response);
Mais sans résultat..
Une idée ?
Afficher la suite
8 mars 2013 à 08:06
Mais justement il affiche "status:"
Mais pas la valeur de status..
Je voudrais qu'il affiche :
"status: disponible"
8 mars 2013 à 08:15
essaye un truc comme ca :
8 mars 2013 à 08:20
$name=$objet->name; et pas $name=$name->name;
8 mars 2013 à 08:31
Warning: simplexml_load_file() [function.simplexml-load-file]: I/O warning : failed to load external entity "<?xml version="1.0" encoding="UTF-8"?>
Je précise aussi que j'ai plusieurs balises qui ont le nom 'objet"
le xml est plutot comme ceci: