Especial UTF-8 (I)
El UTF-8 es un tipo de codificación de caracteres para Unicode que nos permite escribir nuestras páginas web y no preocuparnos por si se va a ver correctamente o van a aparecer caracteres extraños.
Las veces que he trabajado en proyectos multilenguaje es lo que hemos usado, salvo en el caso de japonés y coreano que es preferible usar el UTF-16 porque ocupa menos espacio. Eso ha hecho que me haya acostumbrado a realizar siempre los proyectos en UTF-8 y así evitar luego los problemas que puedan surgir en futuras actualizaciones o en testeos y tener luego que cambiar todo el proyecto a UTF-8.
Es necesario que cada parte del proyecto use la codificación UTF-8, no vale únicamente con escribir la páginas HTML en UTF-8, porque, por ejemplo, si obtenemos los datos de la BD en otra codificación puede haber problemas a la hora de mostrarlos. Los cambios necesarios serían los siguientes:
- En MySQL es necesario que la codificación de sistema, de la base de datos y de las tablas sea UTF-8.
El sistema solo se puede cambiar de codificación cuando se recompila, pero si se puede arrancar con UTF-8:> mysqld --character-set-server=utf8
Las bases de datos se deben crear con la codificación UTF-8:
CREATE DATABASE nombre_bd CHARACTER SET utf8
Y por último crear las tablas en la misma codificación:
CREATE TABLE nombre_tabla (lista_columnas) CHARACTER SET utf8
- En PHP se debería modificar en el archivo php.ini el valor de default_charset, aunque este valor se obvia si ya viene dado en el Content-Type y es mejor no indicarlo:
default_charset = "utf-8"
- En Apache se debe modificar el fichero .htaccess para indicar que el tipo de codificación por defecto sea UTF-8:
AddDefaultCharset UTF-8
- En HTML se debe indicar en el Content-Type:
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />
- Y por último en un XML se debe añadir el encoding:
<?xml version="1.0" encoding="UTF-8" ?>
ASCII, Unicode, UTF-8 y la Iñtërnâçiônàlizæçiøn – parte I (juque).
Pasando WordPress de ISO-8859-1 a UTF-8 (genbeta).
Microsiervos en UTF-8 / Wiki de de Blogs en UTF-8 (Microsiervos).
¡UTF-8 vale la pena! (minid).