mb_send_mailでCCやBCCを指定する 表示名を指定する

PHPのmb_send_mail関数の第4引数の指定の仕方の説明です。

CCやBCCを指定する

例えば送り元(from)が test@example.com で、CCが foo@example.com だったとすると第4引数に渡す値は次のようになります。

$header="From: test@example.com";
$header.="\n";
$header.="Cc: foo@example.com";

同じようにBCCを指定するには、

$header="From: test@example.com";
$header.="\n";
$header.="Bcc: foo@example.com";

CCとBCCを同時に指定するには、

$header="From: test@example.com";
$header.="\n";
$header.="Cc: hoge@example.com";
$header.="\n";
$header.="Bcc: foo@example.com";

CCやBCCを複数指定する

複数のCCやBCCを指定するには、『 , 』でつなぎます。

$header="Bcc:hoge@example.com";
$header.="," ;
$header.="hogehoge@example.com";

送信者の表示名を指定する

送信者の日本語名などを追加するには mb_encode_mimeheader を使います。

$header="From: " .mb_encode_mimeheader("テスト太郎") ."<test@example.com>";

CCやBCCも同じです。

送信先の表示名を指定する

送信先の表示名を指定する場合は第4引数に次のように指定してはいけません。

$header="To: " .mb_encode_mimeheader("テスト太郎さん") ."<test@example.com>";

このようにするとToヘッダーが2つ付くため受け取った側のメーラーによっては表示が変になります。

送信先の表示名は第1引数に渡す値に指定します。

$email=mb_encode_mimeheader("テスト太郎さん") ."<test@example.com>";

まとめ

まとめると次のようになります。

<?php

mb_language("japanese");
mb_internal_encoding("SJIS");

$email=mb_encode_mimeheader("トゥーさん") ."<to@example.com>";
$subject="タイトル";
$body="本文";
$header="From: " .mb_encode_mimeheader("テスト太郎") ."<test@example.com>";
$header.="\n";
$header.="Bcc:" .mb_encode_mimeheader("ほげさん") ."<hoge@example.com>";
$header.="," .mb_encode_mimeheader("ほげほげさん") ."<hogehoge@example.com>";
$header.="\n";
$header.="Cc:" .mb_encode_mimeheader("フーさん") ."<foo@example.com>";
$header.="," .mb_encode_mimeheader("フーフーさん") ."<foofoo@example.com>";

if(!@mb_send_mail($email,$subject,$body,$header)){
  echo "エラー";
}

関連記事

ペンギン

RSS

はてなブックマークはてなブックマーク

リンク

初心者向け技術サイト

メニュー

コメント

タイトルの一覧

投稿の一覧

お問い合わせ

お問い合わせ

CREATE VIEW ビューを作成する

案件募集中です。

上に戻る