L'encodage en latin1, également connu sous le nom de ISO-8859-1, est un système de codage de caractères qui permet de représenter des caractères alphabétiques, des chiffres, des symboles et des signes de ponctuation dans les langues européennes occidentales telles que l'anglais, le français, l'espagnol, l'allemand, l'italien, le portugais, etc.
L'encodage en latin1 utilise une séquence de 8 bits pour représenter chaque caractère, ce qui permet de représenter un total de 256 caractères différents. Il est compatible avec les systèmes informatiques plus anciens et a été largement utilisé dans les premiers jours de l'Internet pour la transmission de textes multilingues.
Cependant, l'encodage en latin1 ne permet pas de représenter des caractères dans des langues non européennes telles que l'arabe, le chinois, le japonais, etc. De plus, avec l'avènement des sites web multilingues et des normes de codage plus avancées telles que UTF-8, l'encodage en latin1 est devenu de moins en moins utilisé.
Il est important de noter que l'encodage en latin1 peut entraîner des problèmes de compatibilité lors de l'affichage de caractères spéciaux, en particulier lors de l'utilisation de différentes langues dans un même document. Il est donc recommandé d'utiliser des encodages plus avancés tels que UTF-8 pour éviter ces problèmes.
Pour enregistrer une chaine de caractère UTF-8 dans une table avec encodage latin1 j’avais essayé:
mb_convert_encoding($str,’latin1´);
mais ça n’a pas marché pour moi, je vous conseille donc:
utf8_decode($str);
Beaucoup plus efficace.