Prérequis de l'encodage en PHP
Les jeux de caractères suivants sont bien supportés par PHP.
-
Jeux de caractères mono-octets :
- qui sont compatibles avec la norme ASCII (compatible ISO646) pour les caractères de l'intervalle 00h à 7fh.
-
Jeux de caractères multi-octets :
- qui sont compatibles avec la norme ASCII (compatible ISO646) pour les caractères de l'intervalle 00h à 7fh.
- qui n'utilisent pas les séquences de type ISO2022.
- qui n'utilisent pas de valeur dans l'intervalle 00h à 7fh dans les séquences composées, qui représentent un caractère unique.
Les jeux de caractères suivants risquent de ne pas fonctionner en PHP.
JIS, SJIS, ISO-2022-JP, BIG-5
Même si aucun script PHP écrit avec ces jeux de caractères ne fonctionne, notamment si des chaînes encodées sont utilisées comme identifiants, ou valeurs littérales dans le script, vous pouvez éviter d'utiliser ces jeux en activant le filtre transparent mbstring pour les données d'entrées HTTP.
Note:
Il est déconseillé d'utiliser les jeux SJIS, BIG5, CP936, CP949 et GB18030 pour l'encodage interne, à moins que vous ne soyez très familiers avec l'analyseur, l'exécuteur et le jeu de caractère lui-même.
Note:
Si vous vous connectez à une base de données avec PHP, il est recommandé d'utiliser le même jeu de caractères pour la base de données et pour le jeu interne pour améliorer le confort d'utilisation mais aussi les performances.
Si vous utilisez PostGreSQL, le jeu de caractères utilisé dans la base de données et celui de PHP peuvent différer car cette base supporte la traduction automatique de jeu de caractères.