¿Necesitas enviar correos a múltiples destinatarios con documentos adjuntos desde tu aplicación web? En esta guía aprenderás cómo enviar correos masivos con archivos adjuntos usando PHP, una habilidad útil para boletines, notificaciones automatizadas o sistemas de facturación.
🔧 Requisitos Previos
- Servidor con PHP 7 o superior
- Biblioteca PHPMailer instalada
- Acceso a una cuenta SMTP (Gmail, Outlook, Mailtrap, etc.)
📦 Instalación de PHPMailer (vía Composer)
composer require phpmailer/phpmailer
📄 Ejemplo de Código PHP
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;
require 'vendor/autoload.php';
$mail = new PHPMailer(true);
try {
// Configuración del servidor SMTP
$mail->isSMTP();
$mail->Host = 'smtp.tu-servidor.com';
$mail->SMTPAuth = true;
$mail->Username = 'usuario@tu-servidor.com';
$mail->Password = 'tu_contraseña';
$mail->SMTPSecure = 'tls';
$mail->Port = 587;
// Remitente
$mail->setFrom('usuario@tu-servidor.com', 'Tu Empresa');
// Lista de destinatarios
$destinatarios = ['cliente1@ejemplo.com', 'cliente2@ejemplo.com', 'cliente3@ejemplo.com'];
foreach ($destinatarios as $email) {
$mail->addAddress($email);
}
// Asunto y contenido
$mail->isHTML(true);
$mail->Subject = 'Oferta Especial para Ti';
$mail->Body = '<h1>Promoción Especial</h1><p>No te pierdas esta oportunidad.</p>';
// Archivo adjunto
$mail->addAttachment('/ruta/al/archivo/factura.pdf', 'Factura.pdf');
// Envío
$mail->send();
echo 'Correos enviados correctamente.';
} catch (Exception $e) {
echo "Error al enviar: {$mail->ErrorInfo}";
}
✅ Consejos para Evitar SPAM
- Configura correctamente los registros SPF, DKIM y DMARC en tu dominio.
- Personaliza el contenido y evita palabras sensibles.
- Usa
BCCsi quieres ocultar los destinatarios.
🧠 Conclusión
Enviar correos masivos con archivos adjuntos en PHP es sencillo y profesional si usas bibliotecas como PHPMailer. Asegúrate de no abusar del envío para evitar bloqueos o ser marcado como spam.