Formation PUB010 : PHP, 2025 L'encodage et les accents

57.5 Quel jeu de caractères utiliser ?


Si le site Web doit être multilingue, l’encodage à utiliser de préférence est l’UTF-8. Cet encodage permet de représenter dans une même table les caractères de différentes langues :

  • caractères français, autrement identifiés dans la table Latin-1 ou ISO-8859
  • caractères d’europe centrale, autrement identifiés par ISO 8859-2
  • caractères turcs, autrement identifiés par ISO 8859-9
  • etc.

Attention : les caractères de la table UTF-8 n’utilisent pas tous le même nombre d’octets. Vous devrez être prudents en utilisant les fonctions PHP suivantes :

  • strlen() va retourner le nombre d’octets et non le nombre de caractères.
  • substr() travaille également avec les octets et non avec les caractères.
  • Il faut leur préférer les fonctions mb_substr() et mb_strlen(). Il faut d’abord préciser l’encodage à l’aide de la fonction mb_internal_encoding("UTF-8"). Dans ces fonctions, les caractères mb signifient multi-byte.

Pour plus d'information

« Introduction aux jeux de caractères ». Open Web Group. http://openweb.eu.org/articles/jeux_caracteres

▼Publicité

Veuillez noter que le contenu de cette fiche vous est partagé à titre gracieux, au meilleur de mes connaissances et sans aucune garantie.
Merci de partager !
Soumettre