我有一个场景,我必须在PHPMailer电子邮件的抄送(CC)字段中添加多个地址。如果电子邮件无效,则不会发送当前邮件。
我希望如此,如果电子邮件地址无效,它将跳过在$mail->addCC($cc);
中添加该电子邮件地址,并简单地发送给其他收件人。
在PHPMailer中有没有其他方法可以实现这一目标?如果是这样,请向我推荐。
答案 0 :(得分:0)
您可以向主要收件人发送电子邮件给抄送收件人,如下所示:
/* Prepare PHPMailer object */
...
/* Send email to main recipient */
...
/* Form cc array */
$ccs= [
"FirstCC" => "first@mail.com",
"SecondCC" => "second@mail.com"
];
/* Send email to each cc as to main */
foreach ($ccs as $name => $address)
{
$mail->clearAddresses();
$mail->AddAddress($address, $name);
$mail->Send();
}
这种方式可以确保所有有效的收件人都能收到电子邮件
答案 1 :(得分:0)
PHPMailer会自动验证您提供的所有地址。您可以判断地址是否真正被接受的唯一方法是尝试发送到该地址,如果失败,请不要尝试下次发送。如果要发送到多个CC(所有收件人都可以看到邮件中的所有其他地址),请执行以下操作:
...
$mail->addAddress('me@example.com');
foreach ($ccs as $cc) {
$mail->addCC($cc);
}
$mail->send();
addCC
会自动跳过实际上无效的地址(对于任何无效的地址返回false
),但此时无法确定是否接受地址传送 - 您必须尝试提供才能找到答案。