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.phpMailer - Cómo se eliminan los destinatarios
puedo conseguir este trabajo por la re-inicialización de los phpMailer
objeto varias veces, pero lo que me gustaría ser capaz de 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 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 objeto $mail
para que pueda asignarlas cada vez que elimine las direcciones antiguas?
¿Existe otra función además de AddAddress
que pueda usar que solo asigne las direcciones?
¿Qué tal se pegue el resto de la inicialización en una función? Entonces podría crear una instancia casi iniciada fácilmente y establecer el resto de los campos. – Svish
Eso es realmente lo que estoy haciendo. Tengo una función 'init_mailer' que crea el objeto y asigna todas las opciones excepto las cuatro líneas que publiqué arriba. Estoy tratando de optimizar esto lo mejor posible. –