yiisoft/mailer

Yii Mailer Library

5.0.1 2023-02-17 05:40 UTC

README

Yii

Yii Mailer Library


Latest Stable Version Total Downloads Build status Scrutinizer Code Quality Code Coverage Mutation testing badge static analysis psalm-level type-coverage

The package provides the content composition functionality, and a basic interface for sending emails. Actual mail sending is provided by separate interchangeable packages.

Out of the box the package profiles a file mailer that, instead of actually sending an email, writes its contents into a file. There are also Swift Mailer and Symfony Mailer based official drivers available as a separate packages that actually can send emails.

Requirements

  • PHP 8.1 or higher.

Installation

The package could be installed with Composer:

composer require yiisoft/mailer

General usage

The following code can be used to send an email:

/**
 * @var \Yiisoft\Mailer\MailerInterface $mailer
 */

$message = $mailer
    ->compose()
    ->withFrom('from@domain.com')
    ->withTo('to@domain.com')
    ->withSubject('Message subject')
    ->withTextBody('Plain text content')
    ->withHtmlBody('<b>HTML content</b>');
    
$mailer->send($message);

Localize view file

You can set a specific locale that will be used to localize view files with withLocale() method:

/**
 * @var \Yiisoft\Mailer\MailerInterface $mailer
 */

$message = $mailer
    ->withLocale('de_DE')
    ->compose('html-view')
    ->withFrom('from@domain.com')
    ->withTo('to@domain.com')
    ->withSubject('Message subject');
    
$mailer->send($message);

Mailer implementations

Documentation

If you need help or have a question, the Yii Forum is a good place for that. You may also check out other Yii Community Resources.

License

The Yii Mailer Library is free software. It is released under the terms of the BSD License. Please see LICENSE for more information.

Maintained by Yii Software.

Support the project

Open Collective

Follow updates

Official website Twitter Telegram Facebook Slack