[PHP-users 28533] Re: mb_send_mail で送ったメールの本文が見えない

nomoto shin-1 @ ca2.so-net.ne.jp
2006年 2月 23日 (木) 05:30:56 JST


  nomotoです。

>Mime-Version: 1.0
>Content-Type: text/plain; charset=UTF-8
>Content-Transfer-Encoding: BASE64
>
>テストのメール
>確認確認確認

メールをUTF-8で送る必要性がないのならば
先に mb_language('iso-2022-jp'); としてJISで送ってみてはいかが
でしょう?

もしUTF-8で送る必要があるのならば
http://jp.php.net/manual/ja/function.mb-send-mail.php#25218
の記事が参考になると思います。

UTF-8で送る場合、mb_send_mailは、Content-Transfer-Encoding: BASE64
というヘッダを付けてくれますが、本文のbase64エンコードは自動的
には行ってくれないようです。

$body = chunk_split(base64_encode($body));
と自分でencodeしてchunkしておかないとヘッダーのBASE64という宣言
と食い違ってしまうので、表示されないのだと思います。


PHP-users メーリングリストの案内