linio/mail

Abstracts mailer service communication, such as Mandrill and Amazon SES

2.0.0 2015-12-03 20:44 UTC

This package is auto-updated.

Last update: 2024-10-28 19:18:52 UTC


README

Latest Stable Version License Build Status Scrutinizer Code Quality

Linio Mail is yet another component of the Linio Framework. It aims to abstract email messaging by supporting multiple adapters.

Install

The recommended way to install Linio Mail is through composer.

$ composer install linio/mail

Tests

To run the test suite, you need install the dependencies via composer, then run PHPUnit.

$ composer install
$ vendor/bin/phpunit

Usage

The library is very easy to use: first, you have to register the service. For Silex, a service provider is included. Just register it:

<?php

$app->register(new \Linio\Component\Mail\Provider\MailServiceProvider(), [
    'mail.adapter_name' => 'mandrill',
    'mail.adapter_options' => [
        'api_key' => '',
    ],
]);

Note that must provide an adapter name and an array of options. Each adapter has different configuration options that are injected by the AdapterFactory.

To start sending messages:

<?php

use Linio\Component\Mail\Message;
use Linio\Component\Mail\Contact;

$message = new Message();
$message->setSubject('hello world');
$message->setFrom(new Contact('Barfoo', 'bar@foo.com'));
$message->addTo(new Contact('Foobar', 'foo@bar.com'));
$message->setTemplate('my_template');
$message->setData(['id' => '1']);

$app['mail.service']->send($message);