|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||||
|
Invité régulier
![]() Inscription : mai 2007 Messages : 27 ![]() |
Bonjour a tous,
je souhaite récupérer les données de fichiers xml, la partie qui m'intéresse est comprise entre <entry id=" "> et </entry> la balise qui suit est soit <article> soit <incollection> puis les champs sont presque toujours les mêmes a 95% exemple de fichier xml : Code XML :
Je souhaite donc tester si la balise article existe ou non si oui je récupère les informations qu'elle contient... Voici mon code Code :
J'aimerai savoir si je procède de la bonne façon, si oui comment résoudre mon problème, si non comment faire. Merci d'avance. |
||||
|
|
00
|
|
|
#2 | |||||||
|
En attente de confirmation mail
![]() Inscription : juin 2002 Messages : 6 164 ![]() |
Citation:
Code :
Citation:
Code :
Citation:
|
|||||||
|
|
00
|
|
|
#3 |
|
Invité régulier
![]() Inscription : mai 2007 Messages : 27 ![]() |
Merci pour ta rapidité.
Je vais essayer de comprendre et utiliser tout ca. |
|
|
00
|
|
|
#4 | ||
|
Invité régulier
![]() Inscription : mai 2007 Messages : 27 ![]() |
J'ai essayé de suivre tes conseille voila en gros mon code
Code :
Je n'ai plus cas remplacer les echo de teste pas des variables. Derniere question : IIe Série (dans le xml) à donné IIe Série (dans l'affichage php) Je crois avoir vue des topic parlant d'utf-8 (or mon xml est bien en utf-8) <?xml version="1.0" encoding="UTF-8" ?> Que faire ? |
||
|
|
00
|
|
|
#5 |
|
En attente de confirmation mail
![]() Inscription : juin 2002 Messages : 6 164 ![]() |
Ça dépend de chaque encodage utilisé dont celle de la sortie HTML générée par votre script, qui est vraisemblablement de type latin1 donc il faudrait utiliser la fonction utf8_decode, par exemple, préalablement sur les données provenant du document XML que vous affichez :
Code :
echo utf8_decode($entry_xml->author)."<br><br>"; |
|
|
00
|
|
|
#6 | ||
|
Invité régulier
![]() Inscription : mai 2007 Messages : 27 ![]() |
Parfait ca marche.
Derniere question : dans le cas ou le fichier xml contiendrait deux entry exemple : Code :
|
||
|
|
00
|
|
|
#7 | ||
|
En attente de confirmation mail
![]() Inscription : juin 2002 Messages : 6 164 ![]() |
Vous faites une itération en ce cas :
Code :
Vous pouvez aussi utiliser les propriétés de SimpleXML :
|
||
|
|
00
|
|
|
#8 | ||
|
Invité régulier
![]() Inscription : mai 2007 Messages : 27 ![]() |
Code :
foreach ($xml->bibtex:entry->children as $entry_xml) je pense qu'il interprete ca comme quand on fait de l'objet en php... |
||
|
|
00
|
|
|
#9 | ||
|
En attente de confirmation mail
![]() Inscription : juin 2002 Messages : 6 164 ![]() |
Le plus simple c'est de passer par une expression XPath :
Code :
|
||
|
|
00
|
|
|
#10 | |||
|
Invité régulier
![]() Inscription : mai 2007 Messages : 27 ![]() |
Citation:
|
|||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com