|
カテゴリ:PHP
以前メール送信プログラムを作ったことがあった。
日本語はマルチバイトなのでかなり面倒だったが、どうにか完成して動いている。 ただ、mb_encode_mimeheaderの挙動がどうも怪しい。 うまくいったりいかなかったり。 調べてみたらこちらに解説が。 mb_encode_mimeheaderの都市伝説を検証する なるほど、そういう事だったのか。 subjectをmb_encode_mimeheaderがISO-2022-JP変換してくれるのに、mb_convert_encodingでもISO-2022-JP変換していたから、二重に変換かけちゃってたっぽい。 mb_internal_encoding()とmb_convert_encoding()で変換する文字コードを揃えることがコツみたい。 MIMEヘッダーはmb_convert_encodingによって76字毎にまとめられて改行される。 (半角英数字での事なので、マルチバイトだと半分だと思う) ちなみに最近知ったんですが、メール送信すると本文が勝手に改行されるのってメーラー側の機能なんですね。 MIMEヘッダーと違って、制約によって改行されてるわけではないようです。 rfcちゃんと読まないと駄目だな・・・ お気に入りの記事を「いいね!」で応援しよう
Last updated
2010.01.19 00:57:55
コメント(0) | コメントを書く
[PHP] カテゴリの最新記事
|