PHPでメール差出人の文字化けを解消する

PHPでメールを送信する場合、mb_send_mail関数でメールを送信することだろう。

そのまま、メールヘッダーを指定せず、メールを送信すると、レンタルサーバーなんかだと、そこのメールアドレスが差出人になってしまう。

これを解消しようと、メールヘッダーに入れる差出人情報を、

$mailheader  = 'From:まるまる事務局';

などとしたら当然のように文字化け。さて。。。

メールの差出人を日本語表記で表示したい場合は、mb_encode_mimeheader関数を使うと良いらしい。

mb_send_mail関数を実行する前に

$office = "なんとかクラブ事務局";
$mailheader = 'From:'. mb_encode_mimeheader($office). " <abc@def.co.jp>n";

などとし、mb_encode_mimeheader関数を使いながら変数に格納し、

mb_language("ja");
mb_internal_encoding("UTF-8");

を実行した後に、mb_send_mail関数でメールを送信すればOK。

■参考ページ
http://q.hatena.ne.jp/1121403293