这是我的代码。
require('class.phpmailer.php'); $ mail =新的PHPMailer(); $ email ='email1@test.com,email2@test.com,email3@test.com'; $ sendmail =“ $ email”; $ mail-> AddAddress($ sendmail,“ Subject”); $ mail-> Subject =“主题”; $ mail-> Body = $ content; if(!$ mail-> Send()){#发送邮件失败 $ msg =“发生未知错误。请稍后再试。”; } 其他{ $ msg =“您的消息已发送。我们会尽快与您联系。”; } }
该问题 如果 $电子邮件 值仅为1。它会发送。但是多个不发送。我该怎么办。我知道在邮件功能中,您必须用逗号分隔多个电子邮件。但不能在phpmailer中工作。
您需要AddAddress为每个收件人调用一次该方法。像这样:
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); }