[PHP] mailのラッパー関数

| コメント(0) | トラックバック(0)

php本家サイトから引っ張ってきてそのまま使用したが、
文字化け、mimeheaderがうまくいってないぽいので、
http://www.akiyan.com/blog/archives/2006/03/phpmb_encode_mi.html
ここを参考にいじってみたが、mb_encode_mimeheaderのオプションっていらんのかいな。

function sendMail($to, $subject, $body, $from_email,$from_name) {

// 元のエンコーディングを保存
$orgEncoding = mb_internal_encoding();
// 変換したい文字列のエンコーディングをセット
mb_internal_encoding('ISO-2022-JP');

$headers = "MIME-Version: 1.0 \n" ;
$headers .= "From: " .
"".mb_encode_mimeheader (mb_convert_encoding($from_name,"ISO-2022-JP","AUTO")) ."" ."<".$from_email."> \n";
$headers .= "Reply-To: " .
"".mb_encode_mimeheader (mb_convert_encoding($from_name,"ISO-2022-JP","AUTO")) ."" ."<".$from_email."> \n";
$headers .= "Content-Type: text/plain;charset=ISO-2022-JP \n";

/* Convert body to same encoding as stated in Content-Type header above */
$body = mb_convert_encoding($body, "ISO-2022-JP","AUTO");

$subject = mb_encode_mimeheader(mb_convert_encoding($subject, "ISO-2022-JP","AUTO"));

/* Mail, optional paramiters. */
$sendmail_params = "-f{$to}";

// エンコーディングを戻す
mb_internal_encoding($orgEncoding);

$result = mail($to, $subject, $body, $headers, $sendmail_params);
return $result;

}

トラックバック(0)

トラックバックURL: http://blog.haiduru.com/mt/mt-tb.cgi/34

コメントする

このブログ記事について

このページは、kazyが2007年10月 3日 11:53に書いたブログ記事です。

ひとつ前のブログ記事は「IEでアルファ画像」です。

次のブログ記事は「BSDでブログ」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。