web-dev-qa-db-fra.com

L'utilisation de "utf8 = ✓" est-elle préférable à "utf8 = true"?

J'ai récemment vu quelques URI contenant le paramètre de requête "utf8 = ✓". Ma première impression (après avoir pensé "mmm, ça a l'air cool") était que cela pouvait être utilisé pour détecter un encodage de caractère cassé.

Alors, est-ce une meilleure façon de résoudre les problèmes potentiels d'encodage de caractères, ou est-ce juste un développeur qui s'amuse avec un hack?

573
Gary Rowe

Par défaut, les anciennes versions de IE (<= 8) soumettront les données du formulaire en encodage Latin-1 si possible. En incluant un caractère qui ne peut pas être exprimé en latin-1, IE est obligé d'utiliser le codage UTF-8 pour ses soumissions de formulaire, ce qui simplifie divers processus d'arrière-plan, par exemple la persistance de la base de données.

Si le paramètre était à la place utf8=true, Cela ne déclencherait pas l'encodage UTF-8 dans ces navigateurs.

813
Gareth