Vuoi inviare un’email con PHP in modo professionale e sicuro? PHPMailer è una delle librerie più usate per spedire messaggi dal tuo sito. In questa guida ti spieghiamo come configurarla in pochi passaggi, con esempi di codice funzionante e consigli pratici per evitare gli errori più comuni.

Vuoi inviare email dal tuo sito PHP in modo sicuro, professionale e personalizzato? PHPMailer è una delle soluzioni più efficaci per farlo. In questa guida ti mostreremo passo dopo passo come inviare un’email in PHP con PHPMailer, con esempi di codice funzionante, spiegazioni chiare e consigli per evitare gli errori più comuni. Una risorsa utile per sviluppatori, freelance e chi gestisce piccoli siti dinamici.
Cos’è PHPMailer e perché usarlo
PHPMailer è una libreria PHP open source che consente di inviare email tramite SMTP, con supporto per HTML, allegati, autenticazione e molto altro. È considerata più sicura e flessibile rispetto alla funzione mail()
nativa di PHP.
Vantaggi di PHPMailer:
- Compatibilità con i server SMTP (come Gmail, Sendinblue, Mailgun, ecc.)
- Supporto per contenuti HTML e allegati
- Maggiore controllo sulla struttura del messaggio
- Autenticazione SMTP sicura (TLS, SSL)
Requisiti e installazione
Per usare PHPMailer, devi prima includerlo nel tuo progetto. Il modo più semplice è con Composer:
composer require phpmailer/phpmailer
Se non usi Composer, puoi scaricare la libreria dal repository ufficiale su GitHub.
Primo esempio: inviare una semplice email
Ecco un esempio base per inviare un’email in PHP con PHPMailer:
use PHPMailerPHPMailerPHPMailer;
use PHPMailerPHPMailerException;
require 'vendor/autoload.php';
$mail = new PHPMailer(true);
try {
// Configurazione server SMTP
$mail->isSMTP();
$mail->Host = 'smtp.example.com';
$mail->SMTPAuth = true;
$mail->Username = 'tuo@email.com';
$mail->Password = 'tuapassword';
$mail->SMTPSecure = 'tls';
$mail->Port = 587;
// Mittente e destinatario
$mail->setFrom('tuo@email.com', 'Il tuo nome');
$mail->addAddress('destinatario@email.com', 'Nome destinatario');
// Contenuto del messaggio
$mail->isHTML(true);
$mail->Subject = 'Oggetto della mail';
$mail->Body = 'Questo è il <b>messaggio</b> HTML';
$mail->AltBody = 'Questo è il messaggio in testo semplice';
$mail->send();
echo 'Messaggio inviato con successo';
} catch (Exception $e) {
echo "Errore nell'invio: {$mail->ErrorInfo}";
}
Consigli per un uso professionale
- Proteggi le credenziali SMTP: non inserire username e password direttamente nel codice. Usa variabili d’ambiente.
- Valida l’input dell’utente: se usi PHPMailer per moduli di contatto, filtra e valida sempre i dati.
- Gestisci gli errori con log: invece di mostrare errori a video, scrivili su file di log.
- Verifica SPF e DKIM: per migliorare la deliverability, configura correttamente questi record sul tuo dominio.
Alternative a PHPMailer
Se vuoi esplorare altre opzioni, considera:
- SwiftMailer (ora deprecato ma ancora in uso)
- Symfony Mailer (consigliato per progetti moderni)
- SendGrid SDK (per chi usa piattaforme esterne)
Conclusione
PHPMailer è uno strumento essenziale per chi sviluppa con PHP e vuole gestire l’invio di email in modo sicuro, flessibile e professionale. Che tu stia costruendo un modulo di contatto, un sistema di notifiche o una newsletter, questa libreria può fare la differenza. Segui la guida, adatta il codice al tuo progetto e migliora subito la comunicazione via email del tuo sito.
Pubblicato in PHP
Commenta per primo