[PHP-users 17311]Re: メールのデコードについて

mayo pupil @ olive.freemail.ne.jp
2003年 8月 14日 (木) 18:50:50 JST


寺尾です。

高橋さんありがとうございます。
メールの日本語はホント苦労します。
一括エンコードが標準化されればいいのに・・・と思いますが
何かしら理由があるからだと思うので、この方法を使わせて頂きます。
今すぐは実験できないので、明日できなかったら1週間後になるけど・・・。
結果をご報告させて頂きます。

PHPを始めて半年とまだまだ初心者ですので、他にもいろいろな方法があれば
教えて頂きたいと思います。
よろしくお願い致します!!

>
> 高橋です
>
> 表題全体を一括してエンコードしてある場合は
> たしかに寺尾さんのコードでも機能するかもしれませんが
> ここは特にルールが標準化されていませんし、
> 複数部分に分けてエンコードされたメールも少なくないようです。
> そこで、こんなふうにしてみてはいかがでしょうか。
> 文字列中にキーワードがあるあいだ、whileでループし
> 1個ずつ変換した文字列と置換してゆくというものです。
>
> こんかいのような「Subject」に限らずとも、
> 文字列置換を繰り返し行いたい場合に応用できます。
>
> while (eregi("(=??ISO?-2022?-JP??B??)([^??]*)(??=)",$subject,$hits)){
> $encoded_part = $hits[1].$hits[2].$hits[3];
> $decode_part = base64_decode($hits[2]);
> $subject = str_replace($replace_part,$decode_part,$subject);
> }
>
> #mailの日本語表題はもう一般的になってしまって
>  これを無視することは出来ないようですね。



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