lecture d'un XML

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : lecture d'un XML

Re: lecture d'un XML

par smn » 11 juil. 2012, 19:21

c'est bon j'ai trouvé mon erreur :
il fallait mettre :
$xml->xpath("//url[@id]")

Merci

Re: lecture d'un XML

par smn » 11 juil. 2012, 17:32

Merci pour cette première réponse, en mettant les crochets, j'ai une nouvelle erreur
Warning: SimpleXMLElement::xpath() [simplexmlelement.xpath]: Invalid expression

Warning: SimpleXMLElement::xpath() [simplexmlelement.xpath]: xmlXPathEval: evaluation failed

Warning: Invalid argument supplied for foreach()
Qu'en pensez-vous ?

Re: lecture d'un XML

par dix2 » 11 juil. 2012, 11:50

salut,

il faut mettre des crochets :
$xml->xpath("/urls/url[@id]/location/")

@+
dix2

lecture d'un XML

par smn » 11 juil. 2012, 11:43

Bonjour,
Voilà j'ai un problème pour lire un xml avec Xpath.

Voici mon fichier XML

Code : Tout sélectionner

<?xml version="1.0" encoding="UTF-8"?> <mycode> <urls> <url id="40857"> <location>www.site1.fr</location> <keywords> <keyword id="539773"> <name>mot cles 1</name> <position>2</position> </keyword> ..... </keywords> ... </url> </urls> </mycode>
Je cherche à avoir toutes les valeurs location, keyword uniquement mot clés 1 et position 1

J'ai commencé juste avec ce bout de code mais je galère déjà :
$xml = simplexml_load_string($xml);
echo '<ul>';
foreach($xml->xpath("/urls/url@id/location/") as $item)
{
   echo '<li>'.$item->location.'</li>';
}
echo '</ul>';
et voici l'erreur :
Warning: SimpleXMLElement::xpath() [simplexmlelement.xpath]: Invalid expression
Warning: Invalid argument supplied for foreach()
Pouvez-vous m'aider ?