Précédent   Forum des professionnels en informatique > PHP > Bibliothèques et frameworks > XML
XML Forum d'entraide sur XML avec PHP. Exemples : SimpleXML, OpenXML... Avant de poster -> FAQ XML, Cours XML et Sources XML
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 30/01/2007, 12h13   #1
Membre expérimenté
 
Inscription : avril 2006
Messages : 462
Détails du profil
Informations personnelles :
Âge : 33
Localisation : Canada

Informations forums :
Inscription : avril 2006
Messages : 462
Points : 556
Points : 556
Envoyer un message via MSN à rbaatouc Envoyer un message via Skype™ à rbaatouc
Par défaut XML et tableau d'objets

rbaatouc est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/01/2007, 12h48   #2
Expert Confirmé Sénior
 
Avatar de Mr N.
 
Inscription : septembre 2004
Messages : 5 421
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 5 421
Points : 5 835
Points : 5 835
Comment tu le parses ?
PHP4 ou 5 ?
__________________
Get your motor runnin'
Head out on the highway...
Mr N. est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/01/2007, 13h54   #3
Membre expérimenté
 
Inscription : avril 2006
Messages : 462
Détails du profil
Informations personnelles :
Âge : 33
Localisation : Canada

Informations forums :
Inscription : avril 2006
Messages : 462
Points : 556
Points : 556
Envoyer un message via MSN à rbaatouc Envoyer un message via Skype™ à rbaatouc
malheuresement php 4

voila la fonction qui parse (désolé mais ça veut pas me garder l'indetation [ça existe comme terme?])

Citation:
<?php
function xml2array($val,&$place)
{
for(
$compteur=0;$place<count($val);$i)
{
$v = $val[$place++];
switch(
$v['type']){
case
"complete":
$tab[$v['tag']][$compteur]['value']="";
if(!empty(
$v['value'])) $tab[$v['tag']][$compteur]['value'] = $v['value'];

$tab[$v['tag']][$compteur++]['attributes']="";
if(!empty(
$v['attributes'])) $tab[$v['tag']][$compteur++]['attributes'] = $v['attributes'];

break;

case
"open":
$tab[$v['tag']][$compteur]['value'] = xml2array($val,$place);

$tab[$v['tag']][$compteur++]['attributes']="";
if(!empty(
$v['attributes'])) $tab[$v['tag']][$compteur++]['attributes'] = $v['attributes'];
break;

case
"close":
return
$tab;
}
}
return
$tab;
}

$xml = file_get_contents("category.xml");
$xp = xml_parser_create();
xml_parser_set_option($xp, XML_OPTION_CASE_FOLDING, false);
xml_parser_set_option($xp, XML_OPTION_SKIP_WHITE, true);
xml_parse_into_struct($xp,$xml,$vals,$index);
xml_parser_free($xp);

$i=0;
$tab = xml2array($vals,$i);
?>
rbaatouc est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/01/2007, 14h31   #4
Expert Confirmé Sénior
 
Avatar de Mr N.
 
Inscription : septembre 2004
Messages : 5 421
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 5 421
Points : 5 835
Points : 5 835
Ok.

ça donne quoi ?
Code :
var_dump($tab['result'][0]['value']['point'][0]['value']['cat_id'][0]['value']);
__________________
Get your motor runnin'
Head out on the highway...
Mr N. est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/01/2007, 14h44   #5
Membre expérimenté
 
Inscription : avril 2006
Messages : 462
Détails du profil
Informations personnelles :
Âge : 33
Localisation : Canada

Informations forums :
Inscription : avril 2006
Messages : 462
Points : 556
Points : 556
Envoyer un message via MSN à rbaatouc Envoyer un message via Skype™ à rbaatouc
ça me donne putain je viens de me rendre compte de ma betise

j'essayais d'afficher
Code :
echo $tab[0]['result']['value']['point'][0]['value']['cat_id'][0]['value'];
merci beaucoup
rbaatouc est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 01h22.


 
 
 
 
Partenaires

Hébergement Web