94

可能重复:
PHPMailer AddAddress()

这是我的代码。

要求('class.phpmailer.php');
$mail = 新 PHPMailer();

$email = 'email1@test.com, email2@test.com, email3@test.com';

    $sendmail = "$email";

    $mail->AddAddress($sendmail,"主题");
    $mail->主题 = "主题";
    $邮件->正文= $内容;      

    if(!$mail->Send()) { # 发送邮件失败
        $msg="发生未知错误。请稍后再试。";
    }
    别的 {
        $msg="您的信息已发送,我们会尽快与您联系。";
    }   
}

$email
值仅为 1 时的问题。它将发送。但多个不发送。我应该为此做些什么。我知道在邮件功能中,您必须用逗号分隔多封电子邮件。但不能在 phpmailer 中工作。

4

1 回答 1

278

您需要AddAddress为每个收件人调用一次该方法。像这样:

$mail->AddAddress('person1@domain.com', 'Person One');
$mail->AddAddress('person2@domain.com', 'Person Two');
// ..

更好的是,将它们添加为抄送收件人。

$mail->AddCC('person1@domain.com', 'Person One');
$mail->AddCC('person2@domain.com', 'Person Two');
// ..

为方便起见,您应该遍历一个数组来执行此操作。

$recipients = array(
   'person1@domain.com' => 'Person One',
   'person2@domain.com' => 'Person Two',
   // ..
);
foreach($recipients as $email => $name)
{
   $mail->AddCC($email, $name);
}
于 2010-06-30T13:10:08.473 回答