Retour : Page Principale > sommaire aide > sommaire aide langages

UTF-8


Réencoder des fichiers dans un dossier
recode ISO-8859-15..UTF-8 *.php
ou

for i in *.php
do
iconv -fUTF8 -tISO-8859-15 "$i" -o "${i%.php}_iso885915.php"
# si tu veux remplacer la version utf8 par la version iso, décommente la ligne suivante
#mv "${i%.php}_iso885915.php" "$i"
done


Réencoder des fichiers dans une arborescence
find mon_dosser/ -iname "*php" -exec recode ISO-8859-15..UTF-8 {} \;

Forcer l'UTF-8 sous Apache
Mettre dans un ./htaccess
 AddType text/html; charset=UTF-8 html
 AddType text/plain; charset=UTF-8 txt
 AddDefaultCharset utf-8

- Pour vérifier l'encodage d'un fichier voir utrac : Programmation:Shell (interwiki inconnu): MemoCommandesLinux

Casse et accents dans  MySQL
Pour rendre un champ sensible à la casse et aux accents utiliser utf8_bin et non utf8_general_ci.

Test problème bdd eFlore
Utiliser une connection phpmyadmin french utf8 : puis exporter les tables eflore_nom_rang et eflore_administration_etat.
Il faut ensuite réaliser une réecriture du fichichier sql avec iconv de cette façon :
iconv -t ISO-8859-1 -f utf8 eflore_administration_etat.sql > eflore_administration_etat_01.sql
iconv -t ISO-8859-1 -f utf8 eflore_nom_rang.sql > eflore_nom_rang_01.sql
Pour les deux tables la transfo ISO vers UTF semble fonctionner. Nous obtenons ensuite des fichiers en UTF-8 correct!

ATTENTION : Il semble y avoir un problème pour la table eflore_zg avec le caractère Î : à résoudre!

DÉMARCHE :
Utiliser la bdd tela_prod_eflore_v1_1_principale présente sur le serveur de Tela, elle semble moins bogué.
Exporter les tables groupés par module puis vérifier dans scite la présence de problème d'encodage. Utiliser iconv sur ces fichiers si nécessaire.
Utiliser  PhpMyAdmin 2.10.1 connecté en utf8.
Seul certain module semble poser pb...

UTF8 : les fonctions PHP qui sont à risques
Voir : http://www.phpwact.org/php/i18n/utf-8

Correspondance
' ' \047 Õ \303\203\342\200\242
' ' \047 ’ \303\242\342\202\254\342\204\242
” ” \342\200\235 ” \303\242\342\202\254\302\235
” ” \342\200\235 “ \303\242\342\202\254\305\223
- - \055 – \303\242\342\202\254\342\200\234
— \303\202\342\200\224
… \303\242\342\202\254\302\246
€ € \342\202\254 € \303\202\342\202\254
à à \303\240 Ã \303\203\306\222

É É \x89 \303\211 É \303\203 \313\206
È È \x88 \303\210 È \303\203 \342\200\260
Ë Ë \303\213 Ë \303\203\342\200\271

À À \303\200 À \303\203 \342\202\254
  \303\202 Â \303\203 \342\200\232
Ä Ä \303\204 Ä \303\203 \342\200\236
ŠŠ\303\205 Å \303\203 \342\200\246


ΠΠ\303\216 Î \303\203\305\275

Ñ Ñ \303\221 Ñ \303\203\342\200\230

Ó Ó \303\223 Ó \303\203\342\200\234
Ó Ó \303\223 Ò \303\203\342\200\231
Ö Ö \303\226 Ö \303\203\342\200\223
Ø Ø \303\230 Ø \303\203\313\234

Ú Ú \303\232 Ú \303\203\305\241
Ü Ü \303\234 Ü \303\203\305\223

ß ß \303\237 ß \303\203\305\270

œ œ \305\223 œ \303\202\305\223
œ œ \305\223 œ \303\205 \342\200\234
Œ Œ \305\222 Œ \303\202\305\222
Œ Œ \305\222 Œ \303\205\342\200\231