Utf_encode
Fermé
rutchyweb
Messages postés
11
Date d'inscription
vendredi 31 janvier 2014
Statut
Membre
Dernière intervention
28 janvier 2015
-
28 janv. 2015 à 08:15
ElementW Messages postés 4814 Date d'inscription dimanche 12 juin 2011 Statut Contributeur Dernière intervention 5 octobre 2021 - 29 janv. 2015 à 15:34
ElementW Messages postés 4814 Date d'inscription dimanche 12 juin 2011 Statut Contributeur Dernière intervention 5 octobre 2021 - 29 janv. 2015 à 15:34
Bonjour,
Je voudrais savoir comment on fait pour remplacer un mot ayant un caractère spéciaux avec une erreur d'encodage:
exemple:
Hyères -> Hyères et l'accent "è" doit être remplacé par "è"
j'ai ce code:
$hyeres=utf8_decode("Hyères");
et j'utilise str_replace pour le remplacer mais ça marche pas!
Merci de bien vouloir m'aider :)
Je voudrais savoir comment on fait pour remplacer un mot ayant un caractère spéciaux avec une erreur d'encodage:
exemple:
Hyères -> Hyères et l'accent "è" doit être remplacé par "è"
j'ai ce code:
$hyeres=utf8_decode("Hyères");
et j'utilise str_replace pour le remplacer mais ça marche pas!
Merci de bien vouloir m'aider :)
2 réponses
ElementW
Messages postés
4814
Date d'inscription
dimanche 12 juin 2011
Statut
Contributeur
Dernière intervention
5 octobre 2021
1 228
Modifié par gravgun le 28/01/2015 à 20:59
Modifié par gravgun le 28/01/2015 à 20:59
'lut, ton problème d'encodage se situe a deux niveaux:
- l'encodage du fichier source
- l'encodage de la sortie
En effet, PHP ne faisant pas la différence entre sources ni strings ASCII et UTF-8, ce n'est pas sa faute si la sortie n'est pas correcte. Si ta source est en UTF-8 -- elle devrait absolument l'être; si elle ne l'est pas convertis-la (sans cette connerie Micro$oftienne de BOM) -- et que ta sortie HTML est annoncée comme étant en UTF-8 (via le header HTTP
En bref, met moi de l'UTF-8 partout, ça t'évitera bien des migraines.
Autrement, si ta sortie et ta source sont déjà en UTF-8,
from human import idiocy
del idiocy
- l'encodage du fichier source
- l'encodage de la sortie
En effet, PHP ne faisant pas la différence entre sources ni strings ASCII et UTF-8, ce n'est pas sa faute si la sortie n'est pas correcte. Si ta source est en UTF-8 -- elle devrait absolument l'être; si elle ne l'est pas convertis-la (sans cette connerie Micro$oftienne de BOM) -- et que ta sortie HTML est annoncée comme étant en UTF-8 (via le header HTTP
Encoding, sa balise
<meta>equivalente ou via
<meta charset="utf-8">en HTML5), tu ne devrais jamais avoir a faire face a ce problème.
En bref, met moi de l'UTF-8 partout, ça t'évitera bien des migraines.
Autrement, si ta sortie et ta source sont déjà en UTF-8,
utf8_decode("Hyères")est suffisant.
from human import idiocy
del idiocy
mpmp93
Messages postés
6648
Date d'inscription
mercredi 13 avril 2011
Statut
Membre
Dernière intervention
28 septembre 2015
1 340
29 janv. 2015 à 15:26
29 janv. 2015 à 15:26
Bonjour,
Je vous conseille d'être "full UTF8", c'est à dire encodé UTF-8 en base de données, sources des scripts, encodage des pages web:
https://html5.immo-scope.com/article/general_applisFullUtf8
A+
Je vous conseille d'être "full UTF8", c'est à dire encodé UTF-8 en base de données, sources des scripts, encodage des pages web:
https://html5.immo-scope.com/article/general_applisFullUtf8
A+
ElementW
Messages postés
4814
Date d'inscription
dimanche 12 juin 2011
Statut
Contributeur
Dernière intervention
5 octobre 2021
1 228
29 janv. 2015 à 15:34
29 janv. 2015 à 15:34
Merci d'avoir réitéré ce que j'ai dis, car on a beau répéter qu'il faut de l'UTF-8 partout, il y a encore des hérétiques qui codent en ISO-8859.