Actualizado el domingo, 19 junio, 2016
UTF-8 (8-bit Unicode Transformation Format) es un formato de codificación de caracteres Unicode e ISO 10646 utilizando símbolos de longitud variable. UTF-8 fue creado por Robert C. Pike y Kenneth L. Thompson. Está definido como estándar por la RFC 3629 de la Internet Engineering Task Force (IETF).1 Actualmente es una de las tres posibilidades de codificación reconocidas por Unicode y lenguajes web, o cuatro en ISO 10646.
Sus características principales son:
- Puede representar cualquier carácter Unicode.
- Usa símbolos de longitud variable (de 1 a 4 bytes por carácter Unicode).
- Incluye la especificación US-ASCII de 7 bits, por lo que cualquier mensaje ASCII se representa sin cambios.
- Incluye sincronía. Es posible determinar el inicio de cada símbolo sin reiniciar la lectura desde el principio de la comunicación.
- No superposición. Los conjuntos de valores que puede tomar cada byte de un carácter multibyte, son disjuntos, por lo que no es posible confundirlos entre sí.
Por estas características es el mas atractivo y usado en la codificación de correos electrónicos y páginas web.
Configurar UTF-8 en apache o htaccess:
AddDefaultCharset utf-8
Configurar UTF-8 en html: Añadimos en el head.
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
Configurar UTF-8 en mysql:
Configuraremos nuestras tablas con cotejamiento utf8_spanish_ci.
Configurar UTF-8 en consultas mysql desde php:
Añadir después de realizar el mysql_select_db, la función:
mysql_query("SET NAMES 'utf8'");