Précédent   Forum des professionnels en informatique > PHP > Langage
Langage Forum sur le langage PHP, la POO, les conventions, la sécurité, etc. Avant de poster : FAQ Langage, toutes les FAQ PHP, cours langage et sources PHP
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 18/05/2011, 12h40   #1
Membre habitué
 
Inscription : septembre 2004
Messages : 244
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 244
Points : 110
Points : 110
Par défaut en-tête flux XML

Bonjour,

Savez-vous si il est possible de récupérer via simplexml ou autre fonction php, l'encodage d'un fichier XML ?

Merci beaucoup
omelhor est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/05/2011, 12h54   #2
Expert Confirmé
 
Avatar de Séb.
 
Inscription : mars 2005
Messages : 2 823
Détails du profil
Informations personnelles :
Âge : 34
Localisation : France

Informations professionnelles :
Secteur : High Tech - Opérateur de télécommunications

Informations forums :
Inscription : mars 2005
Messages : 2 823
Points : 3 449
Points : 3 449
Oui avec DOM : http://fr.php.net/manual/fr/class.do...props.encoding
Je ne crois pas que ce soit possible avec SimpleXML.
__________________
Un problème exposé clairement est déjà à moitié résolu
Keep It Smart and Simple
Séb. est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/05/2011, 14h30   #3
Membre habitué
 
Inscription : septembre 2004
Messages : 244
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 244
Points : 110
Points : 110
Citation:
Envoyé par Séb. Voir le message
Oui avec DOM : http://fr.php.net/manual/fr/class.do...props.encoding
Je ne crois pas que ce soit possible avec SimpleXML.

J'essaye de charger le fichier XML via dom, mais a priori je ne récupère rien, est-ce normal ?

Fichier XML :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
<?xml version="1.0" encoding="UTF-8"?>
 
<rss version="2.0" 
  xmlns:dc="http://purl.org/dc/elements/1.1/" 
  xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
  xmlns:atom="http://www.w3.org/2005/Atom"
  xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel>
 
<title>test</title>
<description>test xml</description>
<language>fr</language>
 
<link></link>
<atom:link href="" rel="self" type="application/rss+xml" />
 
 
	<item>
  	<title>titre 1</title>
  	<link>http://www.lien1.html</link>
  	<guid>http://www.lien1.html</guid>
  	<description>
	description 1
	</description>
  	<category>test1</category>
  	<comments>test1</comments>
  	<dc:date>2011-05-06T10:00:53+00:00</dc:date>
  	<dc:creator>xxx</dc:creator>
  	</item>
	<item>
  	<title>titre 2</title>
  	<link>http://www.lien2.html</link>
  	<guid>http://www.lien2.html</guid>
  	<description>
	description 2
	</description>
  	<category>test2</category>
  	<comments>test2</comments>
  	<dc:date>2011-04-06T10:00:53+00:00</dc:date>
  	<dc:creator>xxx</dc:creator>
  	</item>	
 
</channel>
</rss>
Mon code PHP :

Code :
1
2
3
4
5
$dom = new DOMDocument;
$dom->load('test.xml');
echo "<pre>";
print_r($dom);
echo "</pre>";
Cela me renvoie :

Code :
1
2
3
DOMDocument Object
(
)
omelhor est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/05/2011, 15h04   #4
Modérateur
 
Inscription : septembre 2010
Messages : 7 103
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 103
Points : 8 466
Points : 8 466
fait plutôt

Code :
echo htmlspecialchars($dom->saveXML(), null, 'utf-8');
__________________
http://blog.stealth35.com/
stealth35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/05/2011, 15h12   #5
Membre habitué
 
Inscription : septembre 2004
Messages : 244
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 244
Points : 110
Points : 110
Citation:
Envoyé par stealth35 Voir le message
fait plutôt

Code :
echo htmlspecialchars($dom->saveXML(), null, 'utf-8');
en fait je cherche pas a sauvegardé, mon but et de savoir si le fichier est encoder en utf8 ou autre
omelhor est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/05/2011, 15h33   #6
Modérateur
 
Inscription : septembre 2010
Messages : 7 103
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 103
Points : 8 466
Points : 8 466
Citation:
Envoyé par omelhor Voir le message
en fait je cherche pas a sauvegardé, mon but et de savoir si le fichier est encoder en utf8 ou autre
je répondais à ça...

Citation:
mais a priori je ne récupère rien, est-ce normal ?
__________________
http://blog.stealth35.com/
stealth35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/05/2011, 15h59   #7
Membre habitué
 
Inscription : septembre 2004
Messages : 244
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 244
Points : 110
Points : 110
Citation:
Envoyé par stealth35 Voir le message
je répondais à ça...
En effet ça marche très bien, j'avais pas compris l'astuce. Du coup je suis pas sur l'aller dans la bonne direction.

Y a t'il un moyen de récupérer à partir du dom, l'encodage d'un fichier xml, exemple j'ai pour en tête :

Code :
<?xml version="1.0" encoding="UTF-8"?>
Est'il possible de récupérer "UTF-8" ??
omelhor est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/05/2011, 16h04   #8
Modérateur
 
Inscription : septembre 2010
Messages : 7 103
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 103
Points : 8 466
Points : 8 466
Citation:
Envoyé par omelhor Voir le message
Code :
<?xml version="1.0" encoding="UTF-8"?>
Est'il possible de récupérer "UTF-8" ??
cf : le poste de Sèb
__________________
http://blog.stealth35.com/
stealth35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/05/2011, 16h26   #9
Membre chevronné
 
Homme
Développeur Web
Inscription : mars 2011
Messages : 399
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Développeur Web
Secteur : Finance

Informations forums :
Inscription : mars 2011
Messages : 399
Points : 662
Points : 662
http://codepad.viper-7.com/sxkCFl




Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
<?php
$rss = '<?xml version="1.0" encoding="UTF-8"?>
 
<rss version="2.0" 
  xmlns:dc="http://purl.org/dc/elements/1.1/" 
  xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
  xmlns:atom="http://www.w3.org/2005/Atom"
  xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel>
 
<title>test</title>
<description>test xml</description>
<language>fr</language>
 
<link></link>
<atom:link href="" rel="self" type="application/rss+xml" />
 
 
	<item>
  	<title>titre 1</title>
  	<link>http://www.lien1.html</link>
  	<guid>http://www.lien1.html</guid>
  	<description>
	description 1
	</description>
  	<category>test1</category>
  	<comments>test1</comments>
  	<dc:date>2011-05-06T10:00:53+00:00</dc:date>
  	<dc:creator>xxx</dc:creator>
  	</item>
	<item>
  	<title>titre 2</title>
  	<link>http://www.lien2.html</link>
  	<guid>http://www.lien2.html</guid>
  	<description>
	description 2
	</description>
  	<category>test2</category>
  	<comments>test2</comments>
  	<dc:date>2011-04-06T10:00:53+00:00</dc:date>
  	<dc:creator>xxx</dc:creator>
  	</item>	
 
</channel>
</rss>';
$dom = new DOMDocument;
$dom->loadXML($rss);
echo $dom->encoding;
__________________
Membre de StackOverflow, je suis un fervant utilisateur de PHP et de jQuery.
Après des études de graphisme, j'ai décidé de mélanger développement web et web design. J'ai ainsi donc créé mon site web mais aussi plusieurs projets personnels.
Dans les plus aboutis, vous pourrez trouver dans mon labo et dans mon devblog, un raccourcisseur d'url, un bookmarklet pour envoyer l'url de la page actuelle vers votre email pour lire plus tard ou sauvegarder, mon générateur de template HTML5, etc...
Shikiryu est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/05/2011, 16h27   #10
Membre habitué
 
Inscription : septembre 2004
Messages : 244
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 244
Points : 110
Points : 110
Citation:
Envoyé par stealth35 Voir le message
cf : le poste de Sèb
En effet, c'est vraiment simple, je me rend compte que j'ai du mal à interprété les définition officiel des docs en php


Code :
1
2
3
$dom = new DOMDocument;
$dom->load('test.xml');
echo $dom->actualEncoding;
Resultat :


Merci bcp pour votre aide, je clos le sujet
omelhor est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/05/2011, 16h34   #11
Modérateur
 
Inscription : septembre 2010
Messages : 7 103
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 103
Points : 8 466
Points : 8 466
utilise encoding tout court comme le dit la doc, (et Sèb)
__________________
http://blog.stealth35.com/
stealth35 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 14h36.


 
 
 
 
Partenaires

Hébergement Web