向 codeigniter php 中的多个电子邮件地址发送邮件无效

sending mail to multiple email address in codeigniter php not working

我正在尝试使用 phpmailer 将邮件发送到使用 codeigniter 网站中的复选框选择的电子邮件,

<input class="acb" type="checkbox"  name="email[]" value="<?= $val->email?>"  />

PHP

$this->load->library('phpmailer_lib');
$mail = $this->phpmailer_lib->load();
$mail->isSMTP();
$mail->Host     = '';
$mail->SMTPAuth = true;
$mail->Username = '';
$mail->Password = '';
$mail->SMTPSecure = 'ssl';
$mail->Port     = 465;
$mail->setFrom('admin@', 'Test');
$mail->addReplyTo('admin@', 'Test');
$mail->addAddress(implode(', ', $this->input->post('email')));
$mail->Subject = 'Important';
$mail->isHTML(true);
$mailContent = $this->input->post('content');
$mail->Body = $mailContent;
$mail->send();

但是这不起作用;它给我错误。

谁能告诉我如何解决它?

提前致谢。

这实际上是您正在使用的 PHPMailer 代码,PHPMailer 的 addAddress 不接受多个电子邮件地址。

http://phpmailer.github.io/PHPMailer/classes/PHPMailer-PHPMailer-PHPMailer.html#method_addAddress

如果您想使用该方法,您将需要遍历列表并分别添加每个列表。

没有 PHP-generated 错误,因为将额外参数传递给方法不会在 PHP 中产生任何类型的错误;它们通过 $argv 数组传递到方法中,但没有唯一的变量名称,因为您没有为它们定义参数占位符。

编辑

我刚才说的仍然是正确的,但再看一遍我发现你现在只传递了一个参数,即来自 implode 的结果字符串,因此它不适用于此。