Hola PJ100,
Se puede usar, pero no tiene sentido, una vez has instanciado la clase, solo necesitas cambiar los datos que corresponda.
Por ejemplo, si tú tienes esto y lo quieres usar más de una vez, sería así:
Código PHP:
Ver original<?php
// primero hay que incluir la clase phpmailer para poder instanciar
//un objeto de la misma
require_once "class.phpmailer.php";
//instanciamos un objeto de la clase phpmailer al que llamamos
//por ejemplo mail
$mail = new phpmailer();
//Definimos las propiedades y llamamos a los métodos
//correspondientes del objeto mail
//Con PluginDir le indicamos a la clase phpmailer donde se
//encuentra la clase smtp que como he comentado al principio de
//este ejemplo va a estar en el subdirectorio includes
$mail->PluginDir = "el_que_sea";
//Con la propiedad Mailer le indicamos que vamos a usar un
//servidor smtp
$mail->Mailer = "smtp";
//Asignamos a Host el nombre de nuestro servidor smtp
$mail->Host = "localhost";
//Le indicamos que el servidor smtp requiere autenticación
$mail->SMTPAuth = true;
//Le decimos cual es nuestro nombre de usuario y password
$mail->Username = $email_de_envio;
$mail->Password = $clave_email_envio;
//Indicamos cual es nuestra dirección de correo y el nombre que
//queremos que vea el usuario que lee nuestro correo
$mail->From = $email_envio;
$mail->FromName = $nombre_envio;
//Le decimos al sistema que es un e-mail en HTML
$mail->IsHTML(true);
//Activamos condificacción utf-8
$mail->CharSet = "UTF-8";
//########################################################
//
// Hasta aquí la parte "común" para todos los envíos,
// suponiendo que el remitente sea siempre el mismo, claro
//
//########################################################
//########################################################
//
// A partir de aquí sería para un envío y para hacer otro
// repetiríamos lo que viene a continuación
//
//########################################################
//Preparamos el contenido del mensaje en HTML
$msg = "Aquí iría el mensaje en HTML";
$msg_txt = "Aquí iría el mensaje alternativo en texto plano";
//Asignamos asunto y cuerpo del mensaje
//El cuerpo del mensaje lo ponemos en formato html
$mail->Subject = "Asunto del e-mail";
$mail->Body = $msg;
//Definimos AltBody por si el destinatario del correo no admite
//email con formato html
$mail->AltBody = $msg_txt;
//el valor por defecto 10 de Timeout es un poco escaso, por tanto lo pongo a 120
$mail->Timeout = 120;
//Indicamos cuales son las direcciones de destino del correo y enviamos los mensajes
$mail->AddAddress($email_de_destino, $nombre_del_destinatario);
$mail->AddReplyTo($email_para_la_respuesta, $nombre_para_la_respuesta);
//se envia el mensaje, si no ha habido problemas la variable $success
//tendra el valor true
$exito = $mail->Send();
//Si el mensaje no ha podido ser enviado se realizaran 4 intentos mas
//como mucho para intentar enviar el mensaje, cada intento se hara 5 s
//segundos despues del anterior, para ello se usa la funcion sleep
$intentos=1;
while( ( !$exito ) && ( $intentos<5 ) && ( $mail->ErrorInfo != "SMTP Error: Data not accepted" ) ) {
//echo $mail->ErrorInfo;
$exito = $mail->Send();
$intentos = $intentos+1;
}
//La clase phpmailer tiene un pequeño bug y es que cuando envia un mail con
//attachment la variable ErrorInfo adquiere el valor Data not accepted, dicho
//valor no debe confundirnos ya que el mensaje ha sido enviado correctamente
if ( $mail->ErrorInfo == "SMTP Error: Data not accepted" ) {
$exito=true;
}
if( !$exito ) {
echo "Problemas enviando correo electrónico a " . $email;
echo "<br>" . $mail->ErrorInfo;
} else {
echo "Correo enviado correctamente a " . $email;
}
//########################################################
//
// Hasta aquí sería para un envío y para hacer otro
// repetiríamos lo que hemos puesto arriba de esto
//
//########################################################
?>
Obviamente lo tienes que analizar y adaptar a tu código y tu proyecto, pero espero que te sirva...