La codificación en UTF-8 siempre ha sido un problema para los desarrolladores web, y más aún en el mundo del envío de e-mails. Parecía que en Omatech teníamos superada toda esta problemática que tantos dolores de cabeza nos ha dado, pero hoy hemos descubierto que aún teníamos problemas con los subjects con caracteres acentuados. Como siempre, Google tiene la respuesta.

A parte de la codificación del propio e-mail, se ha de especificar que el subject contendrá caracteres en UTF-8:

=?UTF-8?B?T=EDtol del mensaje?=
Donde cada carácter acentuado vaya en ASCII (por ejemplo la í ha cambiado a =ED). En PHP es tan fácil como hacer:

$title=»=?UTF-8?B?».base64_encode($title).»?=\n»;

Por otro lado, aprovecho para explicar como consigo tener mis archivos de html o php con buena codificación: