Acentos en los subjects de los emails. Ampliado
15/08/2008 a las 10:42 por ShoxComo pudimos ver en otro post, poner acentos o carácteres extraños en los subjects de los emails ya no es un misterio.
Leyendo el fabuloso libro “Building Scalable Web Sites - The Flickr way” he profundizado más en el tema.
El formato se compone de lo siguiente:
=?utf-8?Q?hello_=E2=98=BA?=
que corresponde a:
=?charset?encoding?encoded-text?=
Vamos por partes, el charset utilizaremos siempre utf-8, ya que es nos posibilita enviar cualquier tipo de cadena de carácteres, sin limitar el alfabeto o idioma.
El encoding, puede ser B o Q, y depende de su codificación, el texto codificado será de una manera o otra:
B - Codificación en Base64: Es la que utilicé en el anterior post, codificando todo el string posteriormente en base64.
Q - Codificación en Quoted Printable (RFC 3548): Cada byte representa un literal comenzando por el símbolo igual (=) seguido por dos dígitos hexadecimales. Por ejemplo el byte 0×8A se representaría con =8A. Los espacios (0×20) serán substituidos por el literal underscore (_, byte 0×5F). Los demás carácteres alfanuméricos se quedarían como están.
¿Cual es la mejor opción? Ambas generarán un subject bien formado, peró quizas en modo Q, el texto codificado final es un poco más human-friendly, que el codificado en base64.
Amazon - Building Scalable Web Sites; de Cal Henderson (O’Reilly)
Tags: codificación, mail, PHP, utf-8
Comentarios: Sin comentarios »
