Formation par Olivier Duffez

Formation au référencement par Olivier Duffez, créateur de WebRankInfo !
Une formule efficace alliant théorie et pratique, avec une haute disponibilité des intervenants
Cette formule a déjà convaincu plusieurs centaines d'entreprises, pourquoi pas vous ?
Réservez vite votre place en ligne (convention possible pour imputer sur le budget formation)

Formation référencement Marseille

[Résolu] [PHP - XML] Comment transformer XML en tableau

Poster un nouveau sujet Imprimer cette discussion    Forum -> Administration d'un site Web   Les dernières discussions de ce forum sont disponibles au format RSS
Voir le sujet précédent :: Voir le sujet suivant  
Auteur Message
 
blman
WRInaute accro
WRInaute accro

Inscrit le: 05 Sep 2003
Messages: 2680
Localisation: Nantes / Laval (France)

URL permanente de ce messagePosté le : Lun Avr 25, 2005 12:05    Sujet du message: [Résolu] [PHP - XML] Comment transformer XML en tableau

Bonjour,
je recherche un script qui me permettrait de transformer n'importe quelles données contenu dans un fichier xml en tableau en PHP, je m'explique : je dois récupérer certaines données de 5 sites pour en tirer des stats. J'ai donc créer des fichiers de conf de chaque site en XML que je rapatri. Seulement, je suis bloqué, j'arrive pas à récupérer les données en tableau pour les traiter.

Voila ce que j'ai tester :
- -http://www.aidejavascript.com/article118.html?artsuite=0#sommaire_1
- Ya bien simpleXML mais je n'utilise pas cette version de PHP (-http://developpeur.journaldunet.com/tutoriel/php/040921-php-seguy-simplexml-1a.shtml)
- -http://www.commentcamarche.net/php/phpxml.php3

Mais je ne m'en sort pas, faut dire que je connait un peu XML mais je suis pas un expert, et dans ce cas, les données ont quand même une structure assez complexe. Est-ce que quelqu'un connait une classe ou des fonctions simples à mettre en place ?


Dernière édition par blman le Mer Avr 27, 2005 10:18; édité 1 fois
 
blman Visiter le site web du posteur
rottman
WRInaute accro
WRInaute accro

Inscrit le: 06 Jan 2004
Messages: 2096

URL permanente de ce messagePosté le : Lun Avr 25, 2005 13:09    Sujet du message: [Résolu] [PHP - XML] Comment transformer XML en tableau

Voilà un tutorial XML / PHP assez simple qui pourra t'aider.
 
blman Visiter le site web du posteur
blman
WRInaute accro
WRInaute accro

Inscrit le: 05 Sep 2003
Messages: 2680
Localisation: Nantes / Laval (France)

URL permanente de ce messagePosté le : Lun Avr 25, 2005 13:55    Sujet du message: [Résolu] [PHP - XML] Comment transformer XML en tableau

Merci Rottman, mais ton tuto est efficace pour des fichiers XML simples. Les miens sont assez balaises : les sites dont je parlent sont en plusieurs langues et il y en a même un qui est dans 17 pays. Les fichiers XML que j'importent ne sont pas des fichiers RSS mais tous les fichiers de config de chaque site.

Le système que je recherche ressemblerait beaucoup à celui que j'ais cité -http://www.aidejavascript.com/article118.html?artsuite=0#sommaire_1 mais je n'arrive pas à le faire fonctionner (si il fonctionne) ...
 
blman Visiter le site web du posteur
blman
WRInaute accro
WRInaute accro

Inscrit le: 05 Sep 2003
Messages: 2680
Localisation: Nantes / Laval (France)

URL permanente de ce messagePosté le : Lun Avr 25, 2005 14:10    Sujet du message: [Résolu] [PHP - XML] Comment transformer XML en tableau

Apparement, Il faudrait un script qui utilise xml-parse-into-struct.php, y'en a un ici : -http://fr2.php.net/manual/fr/function.xml-parse-into-struct.php , je vais regarder...
 
blman Visiter le site web du posteur
willyz85
WRInaute occasionnel
WRInaute occasionnel

Inscrit le: 01 Mai 2004
Messages: 134

URL permanente de ce messagePosté le : Mar Avr 26, 2005 17:38    Sujet du message: [Résolu] [PHP - XML] Comment transformer XML en tableau

Mais j'utilise ce code, c'est comme celui de clubic casiment
-http://www.asp-php.net/ressources/bouts_de_code.php?codid=43
 
willyz85 Visiter le site web du posteur
blman
WRInaute accro
WRInaute accro

Inscrit le: 05 Sep 2003
Messages: 2680
Localisation: Nantes / Laval (France)

URL permanente de ce messagePosté le : Mar Avr 26, 2005 17:50    Sujet du message: [Résolu] [PHP - XML] Comment transformer XML en tableau

Merci willyz85, mais c'est pas du RSS que je veux parser. Je suis en train de bosser avec celui qui a créer ce script -http://www.aidejavascript.com/article118.html?artsuite=0#sommaire_1 : vraiment terrible mais pour l'instant, il ne marche pas sur toutes les versions de PHP. Je vous tiendrait au courant...
 
blman Visiter le site web du posteur
shrom
WRInaute passionné
WRInaute passionné

Inscrit le: 05 Juil 2004
Messages: 866

URL permanente de ce messagePosté le : Mar Avr 26, 2005 18:25    Sujet du message: [Résolu] [PHP - XML] Comment transformer XML en tableau

Lorsque le fichier est volumineux, c'est une très mauvaise idée que d'utiliser un tableau en intermédiare, il vaut mieux utilser SAX avec les callback.
 
shrom Visiter le site web du posteur
willyz85
WRInaute occasionnel
WRInaute occasionnel

Inscrit le: 01 Mai 2004
Messages: 134

URL permanente de ce messagePosté le : Mar Avr 26, 2005 18:38    Sujet du message: [Résolu] [PHP - XML] Comment transformer XML en tableau

Il n'y a juste la structure qui change non ? Pas les même balise.
 
willyz85 Visiter le site web du posteur
blman
WRInaute accro
WRInaute accro

Inscrit le: 05 Sep 2003
Messages: 2680
Localisation: Nantes / Laval (France)

URL permanente de ce messagePosté le : Mer Avr 27, 2005 10:27    Sujet du message: [Résolu] [PHP - XML] Comment transformer XML en tableau

Pour ceux que ça interresse :

Tout cette recherche sur la manière de parser un fichier XML m'a permis de trouver pas mal de solution :
- les expressions régulières comme le propose Rottman et willyz85 : pour des petits fichiers RSS, ça à l'air de fonctionner très bien.
- la librairie EXPAT de PHP
- simpleXML avec PHP5
- SAX avec les callback comme le propose shroom (je peux pas en parler, je connais pas, d'ailleurs, shroom, si tu pouvais nous en expliquer brièvement le principe, ce serait sympa)

J'ai choisi la solution de la librairie EXPAT qui correspond assez bien à mes besoins (J'aurais bien choisi simpleXML mais y'a pas PHP5 sur l'hébergement, snifff). Pour ce faire, je doit tirer un grand coup de chapeau à Marabbeh qui a fait ce code très efficace : http://www.aidejavascript.com/article118.html
 
blman Visiter le site web du posteur
shrom
WRInaute passionné
WRInaute passionné

Inscrit le: 05 Juil 2004
Messages: 866

URL permanente de ce messagePosté le : Mer Avr 27, 2005 11:50    Sujet du message: [Résolu] [PHP - XML] Comment transformer XML en tableau

blman a écrit:

- SAX avec les callback comme le propose shroom (je peux pas en parler, je connais pas, d'ailleurs, shroom, si tu pouvais nous en expliquer brièvement le principe, ce serait sympa)


SAX est une des deux API officielles pour parser du XML avec DOM. La solution que tu as retenu utilise justement SAX ( librairie Expat ), par contre le passage par un tableau intermédiaire n'est pas utile, pourquoi ne pas effectuer directement les traitement dans les fonctions callback. Si ton fichier contient 20 enregistrements, pas de problème, s'il en contient 2000 ton hébergeur va te jeter en moins d'une journée.

Il y a des exemples de manipulation de données avec Expat un peu partout sur le web.
 
shrom Visiter le site web du posteur
blman
WRInaute accro
WRInaute accro

Inscrit le: 05 Sep 2003
Messages: 2680
Localisation: Nantes / Laval (France)

URL permanente de ce messagePosté le : Mer Avr 27, 2005 12:01    Sujet du message: [Résolu] [PHP - XML] Comment transformer XML en tableau

Dans le cas précis de ce que j'ai à faire, les tableaux vont me suffir amplement sans me prendre trop de ressources mais je vais quand même me renseigner sur ce que tu dis, car ça m'a l'air bien interressant tout ça... Merci en tout cas pour ces précisions.
 
blman Visiter le site web du posteur
 
Montrer les messages depuis:   
Revenir en haut    Forum -> Administration d'un site Web Toutes les heures sont au format GMT + 2 Heures
Page 1 sur 1 - 
Connexion
Nom d'utilisateur:    Mot de passe:      Se connecter automatiquement à chaque visite    

Définitions :

CLIQUEZ ICI pour vous inscrire à WebRankInfo (forum, annuaire, outils...)

Connexion

© 2001-2005 phpBB Group, support français
Personnalisation : WebRankInfo ™


 ODP  Firefox  Alsacreations  annuaire webmaster Yagoort