PHPMailer多个收件人与外部文件

时间:2013-01-28 05:13:32

标签: php phpmailer

我正在尝试将收件人列表包含在phpMailer脚本中,但没有成功。它只打印出列表,但不包含在函数中。

该文件必须是外部文件,因为它是针对不同收件人针对不同方案运行的自动脚本的一部分。

有什么想法吗?

recipients.php

$mail->AddAddress('blabla@xyc.com');
$mail->AddAddress('gaga@xyz.com');

phpMailer.php

$mail = new PHPMailer(true); 


try {
  include('recipients.php');

  $mail->AddCC('zyx@cba.com');
  $mail->SetFrom('xyz@abc.com');
  $mail->Subject = 'Subject Line';
  $mail->AltBody = 'To view the message, please use an HTML compatible email viewer!';
  $mail->MsgHTML($email_message);
  $mail->IsHTML(true);



  $mail->Send();
  echo "Message Sent OK</p>\n";
} catch (phpmailerException $e) {
  echo $e->errorMessage(); //Pretty error messages from PHPMailer
} catch (Exception $e) {
  echo $e->getMessage(); //Boring error messages from anything else!
}

2 个答案:

答案 0 :(得分:1)

首先尝试从外部文件中获取所有收件人并将其保存在数组中,然后为所有收件人执行for循环并启动邮件功能..这对您来说将更容易

答案 1 :(得分:1)

如果您想关注 phpMailer 定义的界面,我建议 Gautam3164的方法。 因为每个函数调用只能添加一个电子邮件地址。 phpMailer 不是为邮件列表目的而构建的。

否则,我会破解phpMailer的AddAnAddress方法或许添加你自己的“群发地址加载”方法。

private function AddAnAddress($kind, $address, $name = '') {
.....
}

或使用其他库向多个收件人发送电子邮件。

希望这有帮助