Parsing d'un flux XML en utf-8 pour l'afficher en iso-8859-15

Répondre
Bzh
le 01/05/2007 à 15:16
Bzh
J'ai un tit souci de local là et je m'embrouille...

Je parse un flux xml en utf-8 alors que le site est en iso-8859-15 !

Vous imaginez bien que lors de l'affichages, il y a un souci avec les caratères !

Peut on forcer le choix du local avec file_get_contents() ??? Il retourne le fichier codé en utf-8 en iso-8859-15 !

Il y a donc un sacré souci...
LA GLOBULE
le 01/05/2007 à 18:11
LA GLOBULE
Tu dois utiliser la fonction iconv.

Cette fonction va te permettre de transformer l'UTF-8 en ISO-8859-15 mais comme tu t'en doutes, l'ISO-8859-15 comporte moins de caractères que l'UTF-8, par conséquent, tu risques de ne pas pouvoir convertir certains caractères.

Pour éviter que iconv "s'arrête" (en générant une erreur) sur ces caractères qu'il ne peut pas traduire, tu as deux options :
- TRANSLIT : lorsqu'un caractère ne peut être représenté en ISO-8859-15, iconv va essayé de trouver un (ou plusieurs caractères) de substitution
- IGNORE : les caractères qui ne peuvent pas être traduis en ISO-8859-15 sont ignorés

Au final :

<?php
$chaine_iso = iconv('UTF-8', 'ISO-8859-1//IGNORE', $chaine_utf8);
?>


(IGNORE ou bien TRANSLIT, au choix)
Bzh
le 03/05/2007 à 18:33
Bzh
Oui, mais OVH ne connait pas cette fonction !

Je ne sais pas du tout comment faire là...
Bzh
le 03/05/2007 à 18:52
Bzh
Pffff ! C'est résolut !

Il faut activer le php5 par defaut en insérant "SetEnv PHP_VER 5" dans le htaccess !
Répondre

Ecrire un message

Votre message vient d'être créé avec succès.
LoadingChargement en cours