<?php
echo "mail() test mail_3_1.php として mb_encode_mimeheader\n";
echo " mb_send_mail( )を使って送信する実験 \n";
$to_addr = "xxxx@xxxx.xxx";
$from_addr = "test3_1@xxxx.xxx";
$reply_addr = "aaaaa@xxxx.xxx";
$subject_euc = "日本語メールの実験";
$comment_euc = "こんにちは、日本語メールの実験です。\r\n";
$comment_euc .= "mail_3_1.php から送信しています。 \r\n";
$comment_euc .= "mime_encode_headerとmb_convert_encoding の実験です。\r\n";
$comment_euc .= "mb_send_mail()を利用。\r\n";
//
// mb_send_mail()の場合は mb_languageを ja,japanese に設定する必要が
// あります。
//
echo "mb_language()の初期値は = ",mb_language(),"です。\n";
if (mb_language("ja")){
echo "mb_language を",mb_language(),"に設定しました。\n";
}else{
echo "mb_language()の設定に失敗しています。 \n";
}
// EUC-JP から ISO-2022-JP に変換
$subject_jis = mb_convert_encoding($subject_euc,"ISO-2022-JP","EUC-JP");
$comment = mb_convert_encoding($comment_euc,"ISO-2022-JP","EUC-JP");
//
//---- MIME ヘッダー 付与
//
$add_header ="MIME-Version: 1.0\r\n";
$add_header .= "Content-Transfer-Encoding: 7bit\r\n";
$add_header .= "Content-Type : text/plain;\r\n";
$add_header .= "\tcharset=\"iso-2022-jp\";\r\n";
//---- 追加ヘッダー
$add_header .= "From:$from_addr\r\n";
$add_header .= "Reply-To:$reply_addr\r\n";
$add_header .= "X-Mailer : PHP/" . phpversion();
//
//---- メールを送信する。
//
mb_send_mail($to_addr,$subject_jis,$comment,$add_header);
?>
|
今の server 環境では
← mb_language() default で neutral
なので mb_language("ja")として
日本語環境にしてやる。
← ISO-2022-JP に変換しておけばいい。
base64_encode は mb_send_mail で
やってくれる。
← Mime-Version: 1.0
Content-Transfer-Encoding: 7bit
ここに書かなくても付加してくれる。
|