Parser un fichier XML - PHP - Programmation
Marsh Posté le 05-10-2004 à 10:04:34
En fait, j'arrive pas à utiliser ces fonctions...
Exemple de fichier XML :
<balise> |
Je voudrais séparer les <coucou>...</coucou> à chaque fois (que ca me retourne ça dans un tableau ou sous forme d'objet, c'est égal...)
Marsh Posté le 07-10-2004 à 13:20:27
au cas où ça intéresserait quelqu'un :
Code :
|
Merci quand même
Marsh Posté le 07-10-2004 à 16:10:54
Commence par regarder si les extensions XML sont activees sur ton hebergement (renseigne toi aupres de ton hebergeur ou utilise la fonction phpinfo()).
Il existe des fonctions de traitement du XML qui permettent d'acceder a des documents xml, a savoir : xml-rpc, dom-xml, etc.
http://fr2.php.net/manual/fr/ref.domxml.php
http://fr2.php.net/manual/fr/ref.xml.php
http://fr2.php.net/manual/fr/ref.xmlrpc.php
Essayer de le refaire a la main n'est pas une bonne solution : ca a toutes les chances d'etre plus long a faire et d'etre moins performant (ou moins flexible).
Marsh Posté le 07-10-2004 à 16:13:14
Justement, j'ai lu que c'était plus rapide avec les expressions régulières, mais bon, ça galère pas mal, alors j'aurai peut-être pas le choix...
Pour l'instant, je suis sur mon propre PC, donc les extensions XML sont activées, merci!
Marsh Posté le 07-10-2004 à 17:54:52
Te base pas que sur ce test. Ça à l'air un peu bancal.
regex et explode vont plus vite car ce n'est pas du "vrai" parse. Les autres te détecte toutes les balises et vérifie la conformité xml. D'ailleurs, si ça se peut, ce qui est le plus lent c'est quand les librairies appellent tes fonctions php de traitement.
Il aurait fallu tester sur de gros fichier pour voir ce qui se passe (surtout avec explode)
De toute façon, même si le test est vrai et que tu as à traité que disons 3 petits fichiers, ça va mettre:
- regex : 0,00015 s
- sax (le plus lent dans le test): 0,01512 s
Tu verras vraiment la différence ?
Marsh Posté le 07-10-2004 à 19:20:32
pascal_ a écrit : Te base pas que sur ce test. Ça à l'air un peu bancal. |
très bonne remarque...
aurais-tu un parseur à me proposer alors ? à part ceux qui sont intégrés à PHP si possible
Marsh Posté le 07-10-2004 à 19:23:18
me suis toujours dit qu'il me faudrait mon parser perso pour mes fichier perso
Marsh Posté le 07-10-2004 à 19:39:34
SatanKoRn a écrit : très bonne remarque... |
Ben non
Pourquoi tu ne veux pas utiliser ceux intégrés à PHP ?
Marsh Posté le 07-10-2004 à 20:03:08
chacal_one333 : bon courage
pascal_ : parce qu'il est en mode expérimental, non ?
Marsh Posté le 16-10-2004 à 09:07:33
pascal_ a écrit : Ben non |
Parce que si l'hebergeur qu'il préfère ne propose pas l'extension ben il risque d'être marron mais bon , ça m'étonnerais qu'un hebergeur n'ait pas compilé les différentes extention pour traiter le xml.
Marsh Posté le 16-10-2004 à 21:28:31
Reply
Marsh Posté le 05-10-2004 à 09:12:59
Bonjour,
je souhaiterais parser un fichier XML avec PHP. Mais je ne veux pas utiliser le parser de PHP, ni une librairie quelconque. Pourquoi ? Parce que : http://php.weblogs.com/2004/02/11#a3290.
Je veux donc partir du côté des expressions régulières... J'ai passé un bon moment hier à chercher entre les fonctions preg_match_all, spliti et eregi, mais je n'y parviens pas...
Voici le début de mon code :
Si quelqu'un peut m'apporter un peu d'aide, ça serait sympa...
---------------
Matt