[PHP-users 15028]Re: メール件名の文字化けについて
Youichi Iwakiri
yiwakiri @ st.rim.or.jp
2003年 5月 2日 (金) 20:30:30 JST
いわきりです
再現できました。
Moriyoshi Koizumi wrote in <200305020805.h4285SH5059839 @ at.wakwak.com> :
>小泉です。
>mb_convert_encoding() で変換した JIS 文字列 (ISO-2022-JPでなく、plain
>JIS エンコードされた文字列) を、そのまま mb_send_mail() に渡すと、
>もし mb_send_mail() が正常に動いているのであれば、2重に変換が行われるよ
>うな気がするのですが。。。
変換できずにgive upしているみたいです。
<?php
$subject = "てすとてすとてすとてすと";
$subject = mb_convert_encoding($subject, "jis", "euc-jp");
mb_send_mail("yiwakiri @ st.rim.or.jp", $subject, "body");
?>
これで、送られてくるメールのSubject:フィールドは、
小原さんとまったく同じ、
Subject: =?ISO-2022-JP?B?GyRCJEYkOSRIJEYkOSRIJEYkOSRI?=
=?ISO-2022-JP?B?JEYkOSRIGyhC?=
になります。
小泉さんが指摘されているコーディング上の間違いでSubjectが
おかしくなっているのは確かなようです。
ただし、
kohara wrote in <20030502171115.B6C4.SKOHARA @ fb3.so-net.ne.jp> :
>mb_convert_encoding()を利用しないと、件名だけでなく本文も以下のように
>文字化けします。
>
>件名:????????????
> ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
>
>本文(一部抜粋):
> ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
>[??O]
>???
>
>[?^?C?g??]
>????????????
>
>[??e]
>???
となるのは、実は、元の$subject, $msgがeuc-jpでなかった為と
思えるんですが、どうなんでしょう。
--
Youichi Iwakiri
PHP-users メーリングリストの案内