php邮件密件抄送多个收件人
Posted
技术标签:
【中文标题】php邮件密件抄送多个收件人【英文标题】:php mail bcc multiple recipients 【发布时间】:2012-12-23 16:14:24 【问题描述】:如何制作密件抄送邮件? 如果我发送该邮件,它会显示所有收件人!
$to=array();
$members_query = mysql_query("select email from members");
while( $row = mysql_fetch_array($members_query) )
array_push($to, $row['email']);
// To send html mail, the Content-type header must be set
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=UTF-8' . "\r\n";
// Additional headers
//$headers .= 'To: '.$newName.' <'.$newEmail.'>' . "\r\n";
$headers .= 'From: SmsGratisan.com <admin@website.com' . "\r\n";
mail(implode(',', $to), $title, $content, $headers);
谢谢!
【问题讨论】:
您需要添加带有收件人列表的密件抄送标头。有关示例,请参阅the manual。 【参考方案1】:CC 和 BCC 可以作为标头发送(请参阅:http://php.net/manual/en/function.mail.php)。
您还可以使用其他邮件库 - PEAR Mail 库使发送电子邮件更加面向对象。 http://pear.php.net/package/Mail/redirected
【讨论】:
【参考方案2】:将您的mail
设置为null
,然后在您的标题中内爆您的$to
数组
$headers .= 'From: SmsGratisan.com <admin@website.com>' . "\r\n";
$headers .= 'BCC: '. implode(",", $to) . "\r\n";
mail(null, $title, $content, $headers);
【讨论】:
不错的答案,我认为您缺少一个 '>'【参考方案3】:$headers .= 'Bcc: mail@example.com' . "\r\n";
【讨论】:
【参考方案4】:请使用传递 Just Array 而不是执行任何类型的 Implode、设置引号、逗号等。
例子:
$bcc = array();
foreach ($users as $user)
$bcc[] = $user['User']['email'];
并将这个传递给Mail
函数:
$email->from($from)
// ->to($from)
->bcc($bcc)
谢谢, 安基特帕特尔
【讨论】:
以上是关于php邮件密件抄送多个收件人的主要内容,如果未能解决你的问题,请参考以下文章
Ruby Net::SMTP - 使用密件抄送发送电子邮件:收件人
使用 PHP 向使用 Gmail API 发送的电子邮件添加密件抄送