メールの文字化け

Modxで問合わせフォームをスニペットで作成したが、送信されたメールの日本語が文字化けしたので、対処法をメモ。

参考
http://www.res-system.com/weblog/item/478

これで解決したみたい。

mb_language('Japanese');
mb_internal_encoding("UTF-8");

if(mb_send_mail($to,$subject,$body)){
print('お申込みありがとうございました。');
}else{
print('メール送信に失敗しました。');
}

はじめは、mb_convert_encodingでエンコードすればいいのかと思い。

mb_convert_encoding($subject,'Shift-JIS','UTF-8');
mb_convert_encoding($body,'Shift-JIS','UTF-8');

とか書いていろいろ試してみたが違うみたい。

ModxUTF-8でインストールしてるから、そのままUTF-8でいいのかーとかいまだによくわからないけど、まあいいか。

メーラー文字コードはShift-JISだかISO〜だかって何かで読んだ気がするけど、また違う話かも・・。