symfony / mailer
Helps sending emails
Fund package maintenance!
fabpot
Tidelift
symfony.com/sponsor
Requires
- php: >=7.2.5
- egulias/email-validator: ^2.1.10
- psr/log: ~1.0
- symfony/event-dispatcher: ^4.4|^5.0
- symfony/mime: ^5.2
- symfony/polyfill-php80: ^1.15
- symfony/service-contracts: ^1.1|^2
Requires (Dev)
- symfony/amazon-mailer: ^4.4|^5.0
- symfony/google-mailer: ^4.4|^5.0
- symfony/http-client-contracts: ^1.1|^2
- symfony/mailchimp-mailer: ^4.4|^5.0
- symfony/mailgun-mailer: ^4.4|^5.0
- symfony/mailjet-mailer: ^4.4|^5.0
- symfony/messenger: ^4.4|^5.0
- symfony/postmark-mailer: ^4.4|^5.0
- symfony/sendgrid-mailer: ^4.4|^5.0
Conflicts
- symfony/http-kernel: <4.4
- 5.x-dev
- 5.2.x-dev
- v5.2.1
- v5.2.0
- v5.2.0-RC2
- v5.2.0-RC1
- v5.2.0-BETA3
- v5.2.0-BETA2
- v5.2.0-BETA1
- 5.1.x-dev
- v5.1.10
- v5.1.9
- v5.1.8
- v5.1.7
- v5.1.6
- v5.1.5
- v5.1.4
- v5.1.3
- v5.1.2
- v5.1.1
- v5.1.0
- v5.1.0-RC2
- v5.1.0-RC1
- v5.1.0-BETA1
- 5.0.x-dev
- v5.0.11
- v5.0.10
- v5.0.9
- v5.0.8
- v5.0.7
- v5.0.6
- v5.0.5
- v5.0.4
- v5.0.3
- v5.0.2
- v5.0.1
- v5.0.0
- v5.0.0-RC1
- v5.0.0-BETA2
- v5.0.0-BETA1
- 4.4.x-dev
- v4.4.18
- v4.4.17
- v4.4.16
- v4.4.15
- v4.4.14
- v4.4.13
- v4.4.12
- v4.4.11
- v4.4.10
- v4.4.9
- v4.4.8
- v4.4.7
- v4.4.6
- v4.4.5
- v4.4.4
- v4.4.3
- v4.4.2
- v4.4.1
- v4.4.0
- v4.4.0-RC1
- v4.4.0-BETA2
- v4.4.0-BETA1
- 4.3.x-dev
- v4.3.11
- v4.3.10
- v4.3.9
- v4.3.8
- v4.3.7
- v4.3.6
- v4.3.5
- v4.3.4
- v4.3.3
- v4.3.2
- v4.3.1
- v4.3.0
- v4.3.0-RC1
- v4.3.0-BETA2
- v4.3.0-BETA1
This package is auto-updated.
Last update: 2021-01-15 06:21:01 UTC
README
The Mailer component helps sending emails.
Getting Started
$ composer require symfony/mailer
use Symfony\Component\Mailer\Transport; use Symfony\Component\Mailer\Mailer; $transport = Transport::fromDsn('smtp://localhost'); $mailer = new Mailer($transport); $email = (new Email()) ->from('hello@example.com') ->to('you@example.com') //->cc('cc@example.com') //->bcc('bcc@example.com') //->replyTo('fabien@example.com') //->priority(Email::PRIORITY_HIGH) ->subject('Time for Symfony Mailer!') ->text('Sending emails is fun again!') ->html('<p>See Twig integration for better HTML integration!</p>'); $mailer->send($email);
To enable the Twig integration of the Mailer, require symfony/twig-bridge
and
set up the BodyRenderer
:
use Symfony\Bridge\Twig\Mime\BodyRenderer; use Symfony\Component\EventDispatcher\EventDispatcher; use Symfony\Component\Mailer\EventListener\MessageListener; use Twig\Environment as TwigEnvironment; $twig = new TwigEnvironment(...); $messageListener = new MessageListener(new BodyRenderer($twig)); $eventDispatcher = new EventDispatcher(); $eventDispatcher->addSubscriber($messageListener); $mailer = new Mailer($transport, null, $eventDispatcher); $email = (new TemplatedEmail()) // ... ->htmlTemplate('emails/signup.html.twig') ->context([ 'expiration_date' => new \DateTime('+7 days'), 'username' => 'foo', ]) ; $mailer->mail($email);