我有以下代码段试图将电子邮件发送到多个地址。
$recipients = array();
while ($row = mysqli_fetch_array($result)){
$recipients[] = $row;
}
$recipients = array(
'user_1@domain.com' => 'user_1_name',
'user_2@domain.com' => 'user_2_name',
);
foreach($recipients as $email => $name)
{
$mail->addAddress($email, $name);
}
我需要使用数据库中的内容动态填充电子邮件地址数组,然后尝试这样做。
$recipients[] = array(
$row1['email'] => $row1['name']
);
我收到以下错误,所以我知道我没有正确获取数组。感谢您对我那里出问题的想法。
警告:trim()期望参数1为字符串,数组形式为 / Applications / XAMPP ...
编辑
PHPMailer还会触发以下错误,由于我试图动态填充的数组没有从数据库中获取任何电子邮件地址,因此我理解该错误。
邮件错误:您必须提供至少一个收件人电子邮件地址。
答案 0 :(得分:1)
您可以直接获取地址
$recipients = array();
while ($row = mysqli_fetch_array($result)){
$mail->addRecipent($row['email'], $row['name']);
}
p.s。更好地使用for