[Résolu] Transformer charset d'une variable en php.
7 messages
• Page 1 sur 1
- yann123
- WRInaute discret

- Messages: 131
- Inscription: 11 Avr 2005
[Résolu] Transformer charset d'une variable en php.
Bonjour,
je travaille actuellement sur un site internet codé en charset: iso-8859-1.
Sur ce site j'insère du texte dynamiquement à partir d'un flux xml, qui lui est codé en utf-8.
Mon problème est que ce flux utf-8 s'affiche très mal "éèé....". Normal puisque le reste du site est en iso-8859-1.
Avant d'afficher le texte sur mon site, je met les balises xml dans des variables en php et ce sont ces variables que je rappellent pour les afficher.
Savez-vous comment je pourrais transformer le contenu de mes variables de utf-8 vers iso-8859-1 avant de les afficher ?
Existe-il une fonction php pour cela (ce srais l'idéal) ?
Merci d'avance.
je travaille actuellement sur un site internet codé en charset: iso-8859-1.
Sur ce site j'insère du texte dynamiquement à partir d'un flux xml, qui lui est codé en utf-8.
Mon problème est que ce flux utf-8 s'affiche très mal "éèé....". Normal puisque le reste du site est en iso-8859-1.
Avant d'afficher le texte sur mon site, je met les balises xml dans des variables en php et ce sont ces variables que je rappellent pour les afficher.
Savez-vous comment je pourrais transformer le contenu de mes variables de utf-8 vers iso-8859-1 avant de les afficher ?
Existe-il une fonction php pour cela (ce srais l'idéal) ?
Merci d'avance.
Dernière édition par yann123 le Ven Nov 23, 2007 17:42, édité 1 fois.
- Sir Dipp
- WRInaute passionné

- Messages: 1025
- Inscription: 21 Juil 2003
Salut,
Il y a bien une fonction, mb_convert_encoding. Hélas le problème c'est que l'extention mb_* n'est pas disponible sur tous les hébergeurs, donc espèront que tu ai un peu de chance.
Sinon, un utf8_decode ferait peut-être l'affaire
A+
Il y a bien une fonction, mb_convert_encoding. Hélas le problème c'est que l'extention mb_* n'est pas disponible sur tous les hébergeurs, donc espèront que tu ai un peu de chance.
Sinon, un utf8_decode ferait peut-être l'affaire
A+
- yann123
- WRInaute discret

- Messages: 131
- Inscription: 11 Avr 2005
J'ai fait un test comme ceci.
Quand j'ouvre ma page j'ai juste un "r" qui s'affiche à la place de chaque texte.
Comprends pas, je fais d'autre tests.
Merci de ta rapidité.
- Code: Tout sélectionner
$texte=utf8_decode($text);
Quand j'ouvre ma page j'ai juste un "r" qui s'affiche à la place de chaque texte.
Comprends pas, je fais d'autre tests.
Merci de ta rapidité.
-

webmasterlamogere - WRInaute passionné

- Messages: 1874
- Inscription: 17 Déc 2006
n'est il pas possible pas changer le charset du fichier xml ?
<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml version="1.0" encoding="ISO-8859-1"?>
- yann123
- WRInaute discret

- Messages: 131
- Inscription: 11 Avr 2005
Bonsoir,
Merci de vos réponses, pour l'instant j'ai tout simplement changé le charset de la page en utf-8, cela s'affiche bien.
Je reviendrais sur ce problème plus tard car j'ai pas réussi ce que je voulais.
Parfois avec un peu de recul on comprends mieux.
merci encore
Non, le flux ne m'appartiens pas, je ne peux pas y toucher .
Merci de vos réponses, pour l'instant j'ai tout simplement changé le charset de la page en utf-8, cela s'affiche bien.
Je reviendrais sur ce problème plus tard car j'ai pas réussi ce que je voulais.
Parfois avec un peu de recul on comprends mieux.
merci encore
n'est il pas possible pas changer le charset du fichier xml ?
<?xml version="1.0" encoding="ISO-8859-1"?>
Non, le flux ne m'appartiens pas, je ne peux pas y toucher .
- yann123
- WRInaute discret

- Messages: 131
- Inscription: 11 Avr 2005
Bonjour,
J'ai réussit à résoudre mon problème avec utf8_decode
Quand je parse mon flux xml, j'utilise utf8_decode avant d'enregistrer ma balise xml dans une variable.
Ci dessous, je lis la balise xml "login" que j'enregistre dans la variable $login et j'utilise la balise utf8_decode avant de l'enregistrer dans la variable. ça marche nickel.
Par contre si j'enregistre ma balise dans une variable et que ensuite je la décode ça ne marche pas. (ce que j'avais fais en premier)
Voila c'étais juste pour essayer d'expliquer le problème que j'ai rencontré, ça peut peut-être servir à d'autres un jour.
Problème résolu.
Merci
J'ai réussit à résoudre mon problème avec utf8_decode
Quand je parse mon flux xml, j'utilise utf8_decode avant d'enregistrer ma balise xml dans une variable.
Ci dessous, je lis la balise xml "login" que j'enregistre dans la variable $login et j'utilise la balise utf8_decode avant de l'enregistrer dans la variable. ça marche nickel.
- Code: Tout sélectionner
eregi("<login>(.*)</login>",utf8_decode( $results[$i+1] ), $login);
Par contre si j'enregistre ma balise dans une variable et que ensuite je la décode ça ne marche pas. (ce que j'avais fais en premier)
- Code: Tout sélectionner
eregi("<login>(.*)</login>", $results[$i+1], $login);
$login=utf8_decode($login);
Voila c'étais juste pour essayer d'expliquer le problème que j'ai rencontré, ça peut peut-être servir à d'autres un jour.
Problème résolu.
Merci
- Nikit@
- Nouveau WRInaute

- Messages: 5
- Inscription: 5 Aoû 2005
Re:
yann123 a écrit:
- Code: Tout sélectionner
eregi("<login>(.*)</login>",utf8_decode( $results[$i+1] ), $login);
Bonjour et merci beaucoup pour cette solution , ça faisait des jours que je cherchais sur le net sans succès.
7 messages
• Page 1 sur 1
Lectures recommandées sur ce thème :
- [Résolu] Transformation de variable en constante PHP
- [Résolu] [PHP - XML] Comment transformer XML en tableau
- [RESOLU]ptite question avec un index.php variable
- [Résolu!!] traitement php de la variable a mettre dans l'url
- [Résolu] passer une variable php dans le serveur
- Soucis au niveau des accents - charset UTF-8 [Résolu]
- [Résolu] charset ISO 8859 et accents codés en UTF8
- Charset et Php
- différence entre charset=ks_c_5601-1987 et charset=euc-kr
- [RESOLU] transformer une date
- Recherche de citations d'un site en texte brut
Cet outil vous permet de trouver des pages citant votre site mais ne faisant pas (encore) de lien. Il suffira parfois d'un simple mail pour transformer cette simple citation en lien (backlink).
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité
