Re: E-mails with mail() as UTF-8

From: Date: Sat, 08 Jan 2005 01:34:14 +0000
Subject: Re: E-mails with mail() as UTF-8
References: 1  Groups: php.general 
Request: Send a blank email to php-general+get-205858@lists.php.net to get a copy of this message
Hello, on 01/07/2005 01:33 AM Kimmo Alm said the following:
Hey again! I'm having major trouble using mail() to deliver UTF-8 e-mails. They get sent and delivered successfully, but seem to be... messed up when they arrive (they go through my ISP's relay e-mail server). My headers basically look like this: "From: Test <robot@example.com>\nMIME-Version: 1.0\nContent-Type: text/plain; charset=UTF-8\n". I want to be able to use UTF-8 chars both in the subject and the body. When I check the letters in my e-mail client (Opera's built-in one -- M2), it shows "UTF-16". Also, the headers look different than from the ones I send. Is the relay server altering my letters? What the hell is happening?
When you use UTF-8 encoding it may end up including 8 bit characters. In this case you need to use quoted-printbale encoding to compose the message body and some MTA may filter the unencoded 8 bit bytes . For the headers it is the same except the encoding is q-encoding. If you do not know how to encode messages with quoted-printable and q-encoding, you may want to try this popular MIME message composing and sending class. Just specify that the default encoding charset is utf-8 and it will be sent without corruption: http://www.phpclasses.org/mimemessage -- Regards, Manuel Lemos PHP Classes - Free ready to use OOP components written in PHP http://www.phpclasses.org/ PHP Reviews - Reviews of PHP books and other products http://www.phpclasses.org/reviews/ Metastorage - Data object relational mapping layer generator http://www.meta-language.net/metastorage.html

« previous php.general (#205858) next »