ISO-8859-1 vs UTF-8?

Que faut-il utiliser et quand? ou est-il toujours préférable d’utiliser toujours UTF-8? ou ISO-8859-1 a encore de l’importance dans des conditions spécifiques?

Le jeu de caractères est-il lié à la région géographique?


Modifier:

Y at-il un avantage à mettre ce code @charset "utf-8";

ou comme ceci

en haut du fichier CSS?

J’ai trouvé pour cela

Si DreamWeaver ajoute la balise lorsque vous ajoutez un style incorporé au document, il s’agit d’un bogue dans DreamWeaver. De la FAQ du W3C:

“Pour les déclarations de style incorporées dans un document, les règles @charset ne sont pas nécessaires et ne doivent pas être utilisées.”

La spécification de charset fait partie de CSS depuis la version 2.0 (mai 1998), donc si vous avez une spécification de jeu de caractères dans un fichier CSS et que Safari ne peut pas la gérer, c’est un bogue dans Safari.

et append accept-charset dans la forme

 

et ce qui devrait être utilisé si j’utilise le doctype xhtml

  

ou

  

Unicode prend le dessus et a déjà dépassé tous les autres. Je vous suggère de monter dans le train dès maintenant.

Notez qu’il existe plusieurs versions d’Unicode. Joel Spolsky donne un aperçu .

Unicode gagne (Graphique actuel à partir de février 2012 , voir le commentaire ci-dessous pour plus de valeurs exactes.)

UTF-8 est pris en charge partout sur le Web. Ce n’est que dans des applications spécifiques. Vous devriez toujours utiliser utf-8 si vous le pouvez.

L’inconvénient est que pour des langues comme le chinois, utf-8 prend plus de place que, disons, utf-16. Mais si vous ne prévoyez pas aller en chinois, ou même si vous allez en chinois, alors utf-8 va bien.

Le seul inconvénient contre l’utilisation de utf-8 est que cela prend plus d’espace par rapport aux divers encodages, mais comparé aux langages occidentaux, il ne nécessite pratiquement aucun espace, sauf pour les caractères très spéciaux et les octets supplémentaires. Nous sums en 2009 après tout. 😉

Si vous voulez la domination du monde , utilisez UTF-8 fond, car cela couvre tous les caractères humains disponibles dans le monde, y compris les caractères asiatiques, cyrilliques, hébreux, arabes, etc., tandis que ISO-8859 ne concerne que les caractères latins. Vous ne voulez pas avoir de Mojibake .

Je trouve que iso-8859-1 est très utile sur quelques sites où des clients m’envoient des fichiers texte créés dans Word ou Publisher, que je peux facilement insérer dans le code PHP sans me soucier de cela – en particulier lorsque sont concernés. Ce sont des sociétés locales américaines, il n’ya littéralement aucune autre différence dans le texte des pages et je ne vois aucun inconvénient à utiliser ce jeu de caractères sur ces pages particulières. Tous les autres sont UTF-8.

  • ISO-8859-1 est un excellent encodage à utiliser lorsque l’espace est primordial et que vous ne souhaitez que coder des caractères issus des langues latines de base qu’il prend en charge. Et vous ne serez plus jamais obligé de jamais envisager de mettre à jour votre application pour prendre en charge des langues non latines.

  • utf8 est un moyen fantastique pour (a) utiliser le code de base de 8 bits par code que les bibliothèques de caractères existent déjà, ou (b) être un snob en euros. utf8 code les ascii standard en 1 octet par caractère, le latin 1 en 2 octets par caractère, les langues est-européenne et asiatique reçoivent 3 octets par caractère. Il peut aller jusqu’à 4 octets par caractère si vous essayez de coder des langues anciennes qui n’existent pas dans le plan multilingue de base.

  • utf16 est un excellent moyen de démarrer un nouveau code à partir de rien. Sa culture totalement neutre – chaque personne obtient une main juste 2 octets par personnage. Il faut 4 octets par caractère pour les langues anciennes / exotiques – ce qui signifie – dans le pire des cas – c’est aussi mauvais que son grand frère:

  • utf32 est une perte d’espace.