L’une des tâches les plus rébarbatives dans le développement web, ça doit bien être l’envoi d’email (après la gestion des formulaires, qui pourrait bien faire l’objet d’un futur article).
Certes, il existe la fonction mail() intégrée à PHP, mais celle-ci est très basique et loin d’être pratique. Comment envoyée facilement un mail multi-part ? attacher une pièce jointe ? envoyer le mail à plusieurs destinataire ? etc, etc.
C’est là qu’intervient la librairie Swift Mailer. Cette librairie, entièrement orientée objet, est extrêmement riche en fonctionnalités et est basée sur un système de plugin modulable. Elle a été écrite par Chris Crobyn et est désormais maintenue par Fabien Potencier (lead developer of the symfony framework).
Allez, un peu de code faut mieux qu’un paragraphe:
Création du message
[php gutter="false"]
require_once ‘/path/to/swift-mailer/lib/swift_required.php’;
// create the message
$message = Swift_Message::newInstance();
// hop, on défini le sujet du mail
->setSubject(‘Recherche mangeur de kiri’)
->setFrom(array(‘jean@example.com’ => ‘Jean Bond’))
->setTo(array(‘destinataire1@example.com’))
->setBody(‘Le corps du mail en texte.’, ‘text/plain’)
->addPart("<p>La version HTML.</p>", ‘text/html’)
// Ajout d’une pièce jointe depuis un fichier
->attach(Swift_Attachement::fromPath(‘document.pdf’))
// Ajout d’une pièce jointe crée dynamiquement
->attach(Swift_Attachement::newInstance(
$data, ‘document2.pdf’, ‘application/pdf’
))
;
[/php]Envoi
[php gutter="false"]
// Création du "moyen de transport"
// (via serveur SMTP, Sendmail ou fonction mail() php)
// Ici, envoi via serveur SMTP
$transport = Swift_SmtpTransport::newInstance(‘smtp.example.com’, 25)
->setUsername(‘user’)
->setPassword(‘PaSswoRd’)
;
$mailer = Swift_Mailer::newInstance($transport);
$result = $mailer->send($message);
if($result)
{
/* … */
}
else
{
/* … */
}
[/php]Et voilà!
plutôt simple non ?
plutôt simple non ?
Et pour finir, je vous invite à lire la doc détaillée de la librairie. Par ailleurs, n'hésitez pas à nous contacter si vous avez des questions spécifiques.
Références:
Continuer ma lecture
Auteur(s) de l'article
RayCast, à 2 clics de tout
Repos GitHub, pull requests, historique du presse-papiers… Et si tout cela tenait dans un seul raccourci clavier ?
Auteur(s) de l'article
Smashing Conference Freiburg 2026
Retour à Freiburg pour la Smashing Conference 2026: l'IA et les design systems, du CSS et du HTML très techniques, et des talks plus humains sur l'équipe et la posture. Voici ce qu'on en retient.
Auteur(s) de l'article
Le prix du logiciel c’est surtout : qui possède le problème
La responsabilité et la confiance Payer pour un logiciel, ce n’est pas simplement acheter une solution clé en main. C’est bien plus que ça. C’est déléguer une partie de notre […]












.png)
.png)