首页 > 解决方案 > PHPMailer - 如何在发送时获取用户名以欢迎他?

问题描述

我想通过 PHPMailer 向用户发送一条消息,以获取用户的登录信息来问候他 - "Dear". $username. "!"。我怎样才能做到这一点?鉴于我用过$mail->addAddress($email, $username);不止一次。

标签: phpmailer

解决方案


我不确切知道您是如何实现电子邮件/用户名的,但基本答案是使用 for 循环(或者可能是 while 循环,具体取决于实现)。以下代码假设您有两个数组,一个用于电子邮件,一个用于用户名,并且它们的索引已适当对齐。

for ($i=0; $i < count($emails); $i++) {
  $message = "Dear ".$usernames[$i]."!";
  //Recipients
  $mail->addAddress($emails[$i]);     // Add a recipient

  //Content
  $mail->isHTML(true);                                  // Set email format to HTML
  $mail->Subject = 'Hello!';
  $mail->Body    = $message;
  $mail->AltBody = strip_tags($message);

  $mail->send();
  $mail->ClearAllRecipients( );
}

诀窍是使用$mail->ClearAllRecipients( );然后添加新收件人及其自定义正文/标题。


推荐阅读