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 29/08/2007, 12h06   #1
Candidat au titre de Membre du Club
 
Inscription : décembre 2006
Messages : 63
Détails du profil
Informations forums :
Inscription : décembre 2006
Messages : 63
Points : 14
Points : 14
Par défaut [SimpleXML] recuperer données xml avec simplexml

Bonjour,

Je voudrais exploiter certaines données contenu dans les balises d'un fichier xml pour en faire un fichier texte de base. Je voudrais essayer simplexml_load_file car c'est une fonction interessante, mais je voudrais connaître les commandes pour récupérer ces données :

voici mon fichier source : 123456.TXT.xml
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
<?xml version="1.0" encoding="UTF-8" ?> 
- <Objet creationDate="20050707163433731" id="304524">
- <Proprietes>
  <Sujet>titre_article</Sujet> 
  <Type>TXT</Type> 
  <Auteur>toto</Auteur> 
  <NomTechnique>carton de base</NomTechnique> 
  <NbSignes>1531</NbSignes> 
  <Colonnes>1</Colonnes> 
  </Proprietes>
- <Contenu>
- <![CDATA[ BLAblablablalblalbla
  ]]> 
  </Contenu>
  </Objet>
Je voudrais obtenir le fichier titre_article.txt ou titre_article est récupéré de la balise SUJET

contenant ce qu'il y a dans la CDATA:

Code :
1
2
 
BLAblablablalblalbla
Quelles sont les commandes pour la récupération du contenu de la balise CDATA dans le cas présent ?

Merci d'avance pour vos réponses !!
astrolane est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/08/2007, 13h42   #2
En attente de confirmation mail
 
Inscription : juin 2002
Messages : 6 164
Détails du profil
Informations forums :
Inscription : juin 2002
Messages : 6 164
Points : 6 404
Points : 6 404
Code :
1
2
3
$sxml = simplexml_load_file('123456.TXT.xml');
echo $sxml->Proprietes->Sujet;
echo $sxml->Contenu;


Pour rappel, la documentation de l'extension SimpleXML se trouve là : http://fr.php.net/simplexml
julp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/08/2007, 14h13   #3
Candidat au titre de Membre du Club
 
Inscription : décembre 2006
Messages : 63
Détails du profil
Informations forums :
Inscription : décembre 2006
Messages : 63
Points : 14
Points : 14
merci du coup de main, tu m'enlèves une épine du pied, j'ai bien compris les extractions maintenant.

J'ai un petit soucis dans l'extraction du CDATA, j'obtient ce genre de texte :
Code :
1
2
 
en observation à l’hôpital dans la nuit de jeudi à vendredi.
Comment réencode t-on avec xml pour rendre le texte lisible ?

Ecore merci pour votre aide .
astrolane est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/08/2007, 14h16   #4
En attente de confirmation mail
 
Inscription : juin 2002
Messages : 6 164
Détails du profil
Informations forums :
Inscription : juin 2002
Messages : 6 164
Points : 6 404
Points : 6 404
Avec la fonction utf8_decode ?
Code :
1
2
3
$sxml = simplexml_load_file('123456.TXT.xml');
echo utf8_decode($sxml->Proprietes->Sujet);
echo utf8_decode($sxml->Contenu);
Si vous n'utilisez pas un encodage UTF-8 mais ISO pour votre page/script.
julp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/08/2007, 14h39   #5
Candidat au titre de Membre du Club
 
Inscription : décembre 2006
Messages : 63
Détails du profil
Informations forums :
Inscription : décembre 2006
Messages : 63
Points : 14
Points : 14
merci encore , j'avance grâce à vous

Encore bravo pour la rapidité de votre réponse !
astrolane 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 22h57.


 
 
 
 
Partenaires

Hébergement Web