2010-08-27 4 views
1

J'ai un problème comme ci-dessous. J'ai un xml qui contient des caractères utf-8 mais les données de ce xml seront affichées sur la page avec un encodage iso.comment supprimer tous utf-8 characté de la chaîne en utilisant php

Je dois donc retirer ces caractères de la chaîne, comment puis-je faire cela.

Merci Avinash

EDIT:

Je l'ai utilisé: iconv ("ISO-8859-1", "UTF-8", str_replace ('&', 'et', removeEmptyLines (strip_tags ($ value))))

et maintenant son affichage dans un fichier xml.

Comment puis-je supprimer ce ...

+0

duplication possible de [PHP remove accents] (http://stackoverflow.com/questions/3542717/php-remove-accents) – Piskvor

+0

supprimer ou traduire en quelque sorte pour le rendre affichable? –

+0

En outre, "encodage ISO" (en supposant que vous voulez dire 'iso-8859') n'est pas un seul encodage, il est divisé en 16 parties (iso-8859-1 à iso-8859-16). Vous devez spécifier lequel vous voulez dire. – Piskvor

Répondre

1

Utilisez la fonction iconv:

iconv('utf-8','iso-8859-1//TRANSLIT',$text); 
+0

Probablement 'iso-8859-1 // TRANSLIT', compte tenu du commentaire ultérieur. – MSalters

0

Vous pouvez représenter les caractères Unicode avec des références de caractères en utilisant mb_convert_encoding:

mb_substitute_character('entity'); 
echo mb_convert_encoding($str, 'ISO-8859-1', 'UTF-8'); 

Avec mb_substitute_character vous spécifiez comment les caractères non valides (caractères du jeu de caractères d'entrée qui ne sont pas présents dans le jeu de caractères de sortie) doivent être gérés. Dans ce cas, entité spécifie de remplacer les caractères non valides par un HTML character reference correspondant.

+0

s'il vous plaît vérifier la section d'édition dans ma question .... – Avinash

+0

@Avinash: 'Â' est également dans l'ISO 8859-1. C'est pourquoi il n'est pas remplacé. – Gumbo

+0

Et si je supprimer quoi? Comment puis-je supprimer cela? – Avinash

Questions connexes