2

PHP の mail() で 8 ビット文字 åäö を含む電子メールを送信できるようにしたいと考えています。これらは、件名、メッセージ、および「From:」ヘッダーで使用されます。PEAR パッケージを使用せずにこれを行うにはどうすればよいですか?

4

3 に答える 3

4

必要のない単語をエンコードしてもかまわない場合の最も簡単な解決策は、すべてを base64 RFC 2047 エンコードされた単語に入れることです。

$subject= "=?utf-8?b?".base64_encode($subject)."?=";
$body= "blah blah $utf8text blah";
$headers= "MIME-Version: 1.0\r\n";
$headers.= "From: =?utf-8?b?".base64_encode($fromname)."?= <$fromaddress>\r\n";
$headers.= "Content-Type: text/plain;charset=utf-8";

mail($toaddress, $subject, $body, $headers);
于 2009-09-30T21:25:15.023 に答える
0

swiftmailerライブラリを使用します。http://swiftmailer.org/

于 2010-07-12T08:34:54.477 に答える
-2
$headers = array('From' => $from,
    'To' => "<$to>",
    'Subject' => $subject);

if ($is_html) {
    $headers['Content-type'] = "text/html; charset=UTF-8";
} else {
    $headers['Content-type'] = "text/plain; charset=UTF-8";
}

これは私のために働く

于 2012-02-29T08:58:15.920 に答える