Précédent   Forum des professionnels en informatique > PHP > Bibliothèques et frameworks > XML > SimpleXML
SimpleXML Forum d'entraide pour l'extension SimpleXML, qui permet de manipuler des documents XML en PHP (approche DOM).
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 15/09/2006, 09h41   #1
Membre à l'essai
 
Inscription : août 2003
Messages : 101
Détails du profil
Informations forums :
Inscription : août 2003
Messages : 101
Points : 23
Points : 23
Par défaut [SimpleXML] extraire l'élément d'un tableau issu de simpleXML

Bonjour

Je butte sur un probléme
Je veux recupérer le contenu d'un element xml mais j'obtient un objet avec attribut + contenu. Comment séparer les deux

XML
Code XML :
1
2
3
4
5
 
<report>
  <col id=1 width=10>Date</col>
  <col id=2 width=20>Nom</col>  
</report>

pour extraire les infos
Code :
1
2
3
4
5
6
 
$xml=simplexml_load_file("file.xml");
$header=array();
foreach($xml->xpath('//col') as $col){
  array_push($header,$col);
}
Je recupère un tableau $header contenant : les attributs id, with et l'intitulé
Je sépare facilement les attributs par $col['id'] mais je n'atteint pas l'intitulé
Je voudrais stocker dans mon tableau $header que les intitulés

Merci
FlyByck est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/09/2006, 20h36   #2
Membre à l'essai
 
Inscription : août 2003
Messages : 101
Détails du profil
Informations forums :
Inscription : août 2003
Messages : 101
Points : 23
Points : 23
Le contenu est accessible directement les attributs sont en plus mais ne gene pa l'utilisation
FlyByck est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/09/2006, 20h39   #3
Membre émérite
 
Avatar de Linaa
 
Inscription : avril 2005
Messages : 988
Détails du profil
Informations personnelles :
Localisation : France

Informations forums :
Inscription : avril 2005
Messages : 988
Points : 922
Points : 922
L'intitulé, c'est à dire ? 1 et 2 pour l'id ?
Quand tu fais
Code :
$xml=simplexml_load_file("file.xml");
Tu recupères dans $xml un objet correspondant à ton fichier xml
(En supposant que report soit la racine)
Code :
1
2
3
4
foreach($xml->col as $col) {
    echo 'col id : '.$col['id'].'<br />';
    echo 'col width : '.$col['width'].'<br /><br />';
}
C'est ainsi qu'on recupere les attributs, pour les balises il faut utiliser ->
__________________
Linaa est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/09/2006, 21h04   #4
Membre à l'essai
 
Inscription : août 2003
Messages : 101
Détails du profil
Informations forums :
Inscription : août 2003
Messages : 101
Points : 23
Points : 23
Les attributs je ne les utilise pas et j'aurais voulu que mon tableau de sortie ne les possédent pas. Je souhaitais avoir arrray('date','nom')
J'accede directement à la valeur avec un foreach ($col as $a){ $entete = $a}

Merci
FlyByck 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 06h06.


 
 
 
 
Partenaires

Hébergement Web