2017 © Pedro Peláez
 

library swiftmailer-extras

Extra features for Swiftmailer - PHP mailing library

image

enl/swiftmailer-extras

Extra features for Swiftmailer - PHP mailing library

  • Sunday, November 27, 2016
  • by enl
  • Repository
  • 1 Watchers
  • 0 Stars
  • 28 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 0 Forks
  • 0 Open issues
  • 1 Versions
  • 0 % Grown

The README.md

Swiftmailer extras

This library adds two facilities two Swiftmailer library:, (*1)

  • Adapter to PSR-3 compatible logger;
  • Mailer class that can switch from messages spooling to realtime sending.

Logging

To use any kind of PSR-3 compatible logger with Swift you need to register plugin with logging adatper:, (*2)

use Enl\Swiftmailer\Logger\PsrAdapter;

$logger = new Logger(); // Logger MUST implement \Psr\Log\LoggerInterface
$adapter = new PsrAdapter($logger);

$mailer = new Swift_Mailer();
$mailer->registerPlugin(new Swift_Plugins_LoggerPlugin($adapter));

Optional Spooling

As you know, to use Spool facility for Swift_Mailer, you need to define transport like this:, (*3)

$transport = new Swift_Transport_SpoolTransport(new Swift_MemorySpool());
$mailer = new Swift_Mailer($transport);

It is absolutely OK until you need to send this email right now... To achieve this goal, I created a wrapper for swift mailer, which does the trick:, (*4)

$realTransport = new Swift_Transport_NullTransport();
$spool = new Swift_MemorySpool();
$mailer = new Enl\Swifthmailer\Mailer($realTransport, $spool);

To send the message to a queue you should use mailer as usual:, (*5)

$mailer->send(new Swift_Message());

To immediately send exactly one message you should use immediately function before sending:, (*6)

$mailer->immediately()->send(new Swift_Message());
// Next message will be sent to a queue!
$mailer->send(new Swift_Message());

The Versions

27/11 2016

dev-master

9999999-dev

Extra features for Swiftmailer - PHP mailing library

  Sources   Download

The Requires

 

The Development Requires

monolog swiftmailer psr3 priority runtime spool