gpt4 book ai didi

php - 在 PHP Mailer 中发送多封邮件

转载 作者:行者123 更新时间:2023-12-02 05:28:27 25 4
gpt4 key购买 nike

我一直在编写一个使用 PHP 邮件程序发送电子邮件的触发器。该代码的问题在于它向单个收件人发送多封邮件。我什至尝试使用 function singleTo 但即使那样似乎也不起作用。

$mail = new PHPMailer();

for($i = 0; $i <= sizeof($emailid); $i++) {
$mail->WordWrap = 50;
$mail->IsHTML(true);
$mail->SingleTo = true;
$mail->AddAddress($emailid[$i],$name[$i]);
$mail->Subject = 'Some Subject';
$mail->Body = "Some Body";
$mail->AltBody = "Some Body";

$errornumber[$i] = 1;

if(!$mail->Send()) {
$errorinfo[$i] = $mail->ErrorInfo;
$errornumber[$i] = 0;
}
}

最佳答案

AddAddress() 只是将一个新地址添加到地址数组的末尾。如果您想按地址发送单独的电子邮件,则必须在每次迭代时清除该列表,例如

for(...) {
$mail->AddAddress(...);
$mail->send();
$mail->ClearAddresses(); // <---you need this line.
}

如果单个用户收到多封电子邮件,那么您需要一些代码来检测您何时发送了一封电子邮件,例如:

$sent = array();
for(...) {
if (isset($sent[$email[$i]])) {
continue; // check if sent already, skip if so
}
...
if ($mail->send()) {
$sent[$email[$i]] = true; // flag address as already sent
}
}

关于php - 在 PHP Mailer 中发送多封邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18598921/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com