いまさらですがPHPでメール送信する際に気をつけたい文字コード

phpの勉強中であります。躓くところを残さずにはいられません。。

内部のPHPのコードが”UTF-8”の場合にメール送信する際に送られてくるメールが文字化けして読めないことがあります。
PHPでの文字コードを変換するには”mb_convert_encoding関数”を使うそうですが、これでは本文の文字コードは”SJIS”に変換できたのですが、タイトル部分などのヘッダ情報は文字化けしたままでした。
そこで調べたところ、

mb_language関数、mb_internal_encoding関数

が有効だとわかりましたのでご紹介します。
下記のコードは、申込みフォームからPOST関数で受け取った情報を送信するページです。

<?php
$plan=$_POST['plan'];
$price=$_POST['price'];
$name=$_POST['name'];
$ruby=$_POST['ruby'];
$yubin=$_POST['yubin'];
$city=$_POST['city'];
$addr1=$_POST['addr1'];
$addr2=$_POST['addr2'];
$tel=$_POST['tel'];
$fax=$_POST['fax'];
$email=$_POST['email'];
$shiharai=$_POST['shiharai'];
$message=$_POST['message'];
$to="info@aa.com";
$message="
契約プラン:$plan \n
費用:$price \n
名前:$name \n
フリガナ:$ruby \n
住所:$yubin $city $addr1 $addr2 \n
電話番号:$tel \n
FAX:$fax \n
メールアドレス:$email \n
支払い方法:$shiharai \n
連絡事項: \n$message \n";
//$message = mb_convert_encoding($message, "SJIS", "ASCII,JIS,UTF-8,EUC-JP,SJIS");
mb_language('Japanese');
mb_internal_encoding("UTF-8");
if(mb_send_mail($to, 'タイトル部分',$message,'From: sample@aa.com'))
{echo "<h3>申し込みありがとうございます。</h3><p>担当が内容を確認後ご入力いただいたメールアドレス宛に受付確認のメールを返信いたします。</p>";
} else {
echo "<h3>申し訳ございません。エラーにより送信できませんでした。再度ご入力いただき送信していただきますようお願いいたします。</h3><a href=\"/\">トップページに戻る</a>";
}
?>

コメントアウトのしてある

//$message = mb_convert_encoding($message, "SJIS", "ASCII,JIS,UTF-8,EUC-JP,SJIS");

ではタイトル部分の文字コードは変換できません。(私が無知なせいもありますが。。)
以下の部分で文字コードを上手く変換してくれるようです。


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

そして以下の部分でメールを送信しています。

if(mb_send_mail($to, 'タイトル部分',$message,'From: sample@aa.com'))

参考URL1:http://www.res-system.com/weblog/item/478
参考URL2:http://www.securehtml.jp/utf-8/php_utf_mail.html