我有一个PHP脚本,该脚本在函数调用中向多个收件人发送电子贺卡(将每个逗号分隔的电子邮件地址和mail()分别发送给每个收件人)。但是,在查看收到的电子邮件时,每个客户端都可以看到该电子邮件发送到的其他地址,这使我相信,尽管有单独的mail()调用,但它们都是以一封电子邮件发送的。这是我当前的代码:
$to = "email1@example.com, email2@example.com,email3@example.com";
$subject = "subject";
$message = "This is body";
$headers = "MIME-Version: 1.0" . "\r\n";
$headers .= "Content-type:text/html;charset=UTF-8" . "\r\n";
$headers .= 'From: <'.$from.'>' . "\r\n";
$status = mail($to,$subject,$message,$headers);
答案 0 :(得分:1)
您要么需要使用一个库,例如PHPMailer,然后您就可以设置 BCC (盲抄),因此他们不能请参阅其他电子邮件地址。
PHPMailer具有更多优点,仅举几例:
否则,您可以循环整个过程,并且一次只发送到一个电子邮件地址,但这并不是很有效。
答案 1 :(得分:0)
在邮件功能处加null,收件人只看到发件人
$mrows = $sql->execute("SELECT email FROM email", SQL_RETURN_ASSOC);
$mnum = sizeof ($mrows);
// get the email address for who we are sending this email to.
for ( $mi = 0; $mi < $mnum; ++$mi )
{
$email = $mrows [ $mi ] [ "email" ];
@$bcc_emails .= "".$email.", ";
}
@$bcc_emails .= "".$email.", ";
$headers .= "BCC: ".$bcc_emails."\n";
mail(null, $email_subject, $email_text, $headers);