Come inviare un’email in PHP con PHPMailer: guida semplice e veloce

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.

Programmazione PHP
Programmazione PHP

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

Se vuoi rimanere aggiornato su Come inviare un’email in PHP con PHPMailer: guida semplice e veloce iscriviti alla nostra newsletter settimanale

Commenta per primo

Lascia un commento

L'indirizzo email non sarà pubblicato.


*