文字コードについて

2008/04/17 文字コード spok
日本語メールでもっとも文字化けが少ない文字コードは、
キャラクタセット:ISO-2022-JP
エンコード   :7bit
です。

Qdmailは、Quicklyにメールを作成するために、ユーザーから特に指示がない限り、iso-2022-jp,7bitに変換して送ります。

ただし、Qdmailは、Dteiledに指定を変えることができます。
例えば、以下のような組み合わせも、日本語メールでよく使われます。
キャラクタセットエンコードメリットデメリット
UTF-8Base64多言語対応。丸数字など多彩な文字を送付可能base64に対応していないWEBメールなどでは文字化けすることもある。base64は、通常エンコードに比べて、約1.3倍に容量が増える
Shift-JIS7bit機種依存文字を送付可能。日本語以外対応できない。文字化けがでることもある
UTF-8Qauted-Printableんーどうなんでしょ。ヨーロッパではQPエンコードが多いそうだ対応していないメーラーも多い
他にも様々な組み合わせが考えられます。
今後はUTF-8のメールが増えると私は予想しています。
ここでは、文字コードに関係する様々なQdmailのオプションの設定方法をみてみましょう。

キャラクタセット、エンコードの指定方法UTF-8,BASE64等

2008/04/17 文字コード spok
通常、日本語はISO-2022-JPで送ることがもっとも安全ですが、UTF-8 + base64 もよく使われます。ここでは、ユーザーが自分でキャラクタセットやエンコード方法を指定する方法をみてみましょう。
$mail = & new Qdmail( 'UTF-8' , 'base64' );
これで、ヘッダー、本文、添付ファイルの添付名のすべてが、UTF-8になります。
特殊ですが、Quoteod-Printableで設定したい人は、base64の代わりに、「Quoteod-Printable」または「QP」と指定してください。

$mail = new Qdmail(); としてあとに、次のような指定もできます。
$mail -> charset( 'UTF-8' , 'base64' );
簡単ですね。

Qdmailは、自在にcharsetを変更することができるのです。

ちなみに、引数は配列にして
$mail -> charset( array('UTF-8' , 'base64') );
と書くこともできます。