replyto - phpMailer-¿Cómo se eliminan los destinatarios?
phpmailer smtpsecure options (2)
Hay muchas preguntas de StackOverflow sobre este tema, pero no pude encontrar una que pudiera ayudar con el problema que estoy teniendo. La secuencia de comandos que estoy escribiendo envía múltiples correos electrónicos a varios destinatarios con diferentes contenidos de mensajes.
Puedo hacer que esto funcione reinicializando el objeto phpMailer
varias veces, pero lo que me gustaría hacer es crear el objeto una sola vez y luego volver a asignar los siguientes campos:
$mail->AddAddress($email);
$mail->Subject = $subject;
$mail->IsHTML(false);
$mail->Body = $message;
De esa manera puedo simplemente ejecutar esas cuatro líneas de código y luego enviar el correo una y otra vez, tantas veces como sea necesario. Los campos Subject
, IsHTML
y Body
se cambian fácilmente, por lo que el problema que tengo es en la función AddAddress
.
Como probablemente pueda adivinar, después de enviar el primer correo electrónico, el cambio de destinatarios para futuros correos dará como resultado que se acumulen en la lista actual de destinatarios.
En pocas palabras, ¿cómo puedo eliminar las direcciones de correo electrónico asociadas con mi $mail
object para poder asignarlas cada vez que quito las direcciones antiguas?
¿Hay otra función además de AddAddress
que pueda usar que simplemente asigne las direcciones?
Estoy usando esto siempre antes de enviar correos electrónicos a los destinatarios:
// clear addresses of all types
$mail->ClearAddresses(); // each AddAddress add to list
$mail->ClearCCs();
$mail->ClearBCCs();
entonces estoy haciendo exactamente esto: (no usando CC o BCC, $ toaddress es solo una matriz de destinatarios)
foreach($toaddress as $key=>$val) { $mail->AddAddress( $val ); }
estoy usando PHPMailer 5.2
Puede usar ClearAllRecipients ()
$mailer->ClearAllRecipients( ); // clear all