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
Making of : “La nuit des Losers”
Le site de « La Nuit des Losers », fait en un temps record : wireframes papier, animations testées en direct avec Claude Code, un flipper abandonné, un tableau de réactions un peu triché, et deux-trois bugs qu’on garde précieusement. Ce que l’IA a vraiment changé ici, et là où elle a calé.
Auteur(s) de l'article
Dark mode : nécessité ou effet de mode
Nous faisons le tri entre idées reçues, réalités techniques et bonnes pratiques de design.
Auteur(s) de l'article
L’IA pour la gestion de projet
En tant que chef·fe de projet en agence web, on entend beaucoup parler de l’IA et de ce fameux Claude, réputé pour accompagner efficacement les développeur·euses dans leur quotidien. Mais \[…\]













