Spec-Zone.ru › CakePHP 3.2

Класс Mailer

Базовый класс Mailer.

Классы Mailer позволяют вам инкапсулировать связанную логику электронной почты в переиспользуемый и тестируемый класс.

Определение сообщений

Mailer позволяют легко определять методы, которые обрабатывают логику форматирования электронной почты. Например:

class UserMailer extends Mailer
{
    public function resetPassword($user)
    {
        $this
            ->subject('Reset Password')
            ->to($user->email)
            ->set(['token' => $user->token]);
    }
}

Это тривиальный пример, но он показывает, как можно объявить mailer.

Отправка сообщений

После того, как вы определили некоторые сообщения, вы захотите их отправить:

$mailer = new UserMailer();
$mailer->send('resetPassword', $user);

Обработчик событий

Mailer также могут подписываться на события приложения, позволяя вам отделить доставку электронной почты от кода вашего приложения. Переопределив метод implementedEvents() вы можете определить обработчики событий, которые могут преобразовывать события в электронную почту. Например, если у вашего приложения есть событие регистрации пользователя:

public function implementedEvents()
{
    return [
        'Model.afterSave' => 'onRegistration',
    ];
}

public function onRegistration(Event $event, Entity $entity, ArrayObject $options)
{
    if ($entity->isNew()) {
         $this->send('welcome', [$entity]);
    }
}

Метод onRegistration преобразует событие приложения в метод mailer. Наш mailer может быть зарегистрирован либо в загрузчике приложения, либо в методе initialize() класса Table.

Cake\Mailer\Mailer реализует Cake\Event\EventListenerInterface использует Cake\Datasource\ModelAwareTrait
Абстрактный
Пространство имен: Cake\Mailer
Расположение: Mailer/Mailer.php

Краткое описание свойств

  • $_clonedEmail protected
    string

    Клонированный экземпляр Email для восстановления экземпляра после отправки электронной почты действием mailer.

  • $_email protected
    Cake\Mailer\Email
    Экземпляр Email.
  • $name public static
    string
    Имя Mailer.

Унаследованные свойства

  • _modelFactories, _modelType, modelClass

Краткое описание методов

  • __call() public
    Магический метод для перенаправления метода класса в экземпляр Email.
  • __construct() public
    Конструктор.
  • getName() public
    Возвращает имя mailer.
  • implementedEvents() public
    Реализованные события.
  • layout() public
    Устанавливает используемый макет.
  • reset() protected
    Сбросить экземпляр электронной почты.
  • send() public
    Отправка электронной почты.
  • set() public
    Устанавливает переменные представления электронной почты.
  • viewBuilder() public
    Получить билдер представлений экземпляра Email.

Подробное описание методов

__call()source public

__call( string $method , array $args )

Магический метод для перенаправления метода класса в экземпляр Email.

Параметры

строка $method
Имя метода.
массив $args
Аргументы метода

Возвращает


$this

__construct()source public

__construct( Cake\Mailer\Email $email null )

Конструктор.

Параметры

Cake\Mailer\Email $email необязательный null
Экземпляр Email.

getName()source public

getName( )

Возвращает имя mailer.

Возвращает

строка

implementedEvents()source public

implementedEvents( )

Реализованные события.

Возвращает

массив

Реализация

Cake\Event\EventListenerInterface::implementedEvents()

layout()source public

layout( string $layout )

Устанавливает используемый макет.

Параметры

строка $layout
Имя используемого макета.

Возвращает


объект $this.

reset()source protected

reset( )

Сбросить экземпляр электронной почты.

Возвращает


$this

send()source public

send( string $action , array $args [] , array $headers [] )

Отправка электронной почты.

Параметры

строка $action
Имя действия mailer для запуска.
массив $args необязательный []
Аргументы для передачи в запущенное действие mailer.
массив $headers необязательный []
Заголовки для установки.

Возвращает

массив

Исключения

Cake\Mailer\Exception\MissingActionException
BadMethodCallException

set()source public

set( string|array $key , mixed $value null )

Устанавливает переменные представления электронной почты.

Параметры

строка|массив $key
Имя переменной или хеш переменных представления.
смешанный $value необязательный null
Значение переменной представления.

Возвращает


объект $this.

viewBuilder()source public

viewBuilder( )

Получить билдер представлений экземпляра Email.

Возвращает

Cake\View\ViewBuilder

Используемые методы из Cake\Datasource\ModelAwareTrait

_setModelClass()source protected

_setModelClass( string $name )

Установить свойства modelClass и modelKey на основе соглашений.

Если свойства уже установлены, они не будут перезаписаны

Параметры

строка $name
Имя класса.

loadModel()source public

loadModel( string|null $modelClass null , string|null $modelType null )

Загружает и создает объекты репозитория, необходимые этому объекту

Обычно используется для загрузки объектов ORM Table по мере необходимости. Также может быть использован для загрузки других типов объектов репозитория, которые использует ваше приложение.

Если поставщик репозитория не возвращает объект, будет выброшено MissingModelException.

Параметры

строка|null $modelClass необязательный null
Имя класса модели для загрузки. По умолчанию $this->modelClass
строка|null $modelType необязательный null
Тип репозитория для загрузки. По умолчанию значение modelType().

Возвращает

Cake\Datasource\RepositoryInterface
Созданный экземпляр модели.

Исключения

Cake\Datasource\Exception\MissingModelException
Если класс модели не может быть найден.
InvalidArgumentException
При использовании типа, который не был зарегистрирован.
UnexpectedValueException
Если тип модели не был определен

modelFactory()source public

modelFactory( string $type , callable $factory )

Зарегистрировать вызываемый элемент для генерации репозиториев заданного типа.

Параметры

строка $type
Имя типа репозитория, для которого предназначена функция-фабрика.
вызываемый $factory
Функция-фабрика, используемая для создания экземпляров.
END_OF_DOCUMENT_MARKER ```

modelType()source public

modelType( string|null $modelType null )

Установите или получите тип модели, который будет использоваться этим классом

Параметры

string|null $modelType optional null
Тип модели или null для получения текущего

Возвращает

string|Cake\Datasource\ModelAwareTrait
$this

Краткое описание магических методов

addAttachments()source public

addAttachments( $attachments )

Параметры

$attachments

Возвращаемое значение

Cake\Mailer\Email

addBcc()source public

addBcc( $email , $name )

Параметры

$email
$name необязательно

Возвращаемое значение

Cake\Mailer\Email

addCc()source public

addCc( $email , $name )

Параметры

$email
$name необязательно

Возвращаемое значение

Cake\Mailer\Email

addHeaders()source public

addHeaders( array $headers )

Параметры

массив $headers

Возвращаемое значение

Cake\Mailer\Email

addTo()source public

addTo( $email , $name )

Параметры

$email
$name необязательно

Возвращаемое значение

Cake\Mailer\Email

attachments()source public

attachments( $attachments )

Параметры

$attachments необязательно

Возвращаемое значение

Cake\Mailer\Email

bcc()source public

bcc( $email , $name )

Параметры

$email необязательно
$name необязательно

Возвращаемое значение

Cake\Mailer\Email

cc()source public

cc( $email , $name )

Параметры

$email необязательно
$name необязательно

Возвращаемое значение

Cake\Mailer\Email

charset()source public

charset( $charset )

Параметры

$charset необязательно

Возвращаемое значение

Cake\Mailer\Email

domain()source public

domain( $domain )

Параметры

$domain необязательно

Возвращаемое значение

Cake\Mailer\Email

emailFormat()source public

emailFormat( $format )

Параметры

$format необязательно

Возвращаемое значение

Cake\Mailer\Email

from()source public

from( $email , $name )

Параметры

$email необязательно
$name необязательно

Возвращаемое значение

Cake\Mailer\Email

getHeaders()source public

getHeaders( array $include )

Параметры

массив $include необязательно

Возвращаемое значение

Cake\Mailer\Email

headerCharset()source public

headerCharset( $charset )

Параметры

$charset необязательно

Возвращаемое значение

Cake\Mailer\Email

helpers()source public

helpers( $helpers )

Параметры

$helpers необязательно

Возвращаемое значение

Cake\Mailer\Email

message()source public

message( $type )

Параметры

$type необязательно

Возвращаемое значение

Cake\Mailer\Email

messageId()source public

messageId( $message )

Параметры

$message необязательно

Возвращаемое значение

Cake\Mailer\Email

profile()source public

profile( $config )

Параметры

$config необязательно

Возвращаемое значение

Cake\Mailer\Email

readReceipt()source public

readReceipt( $email , $name )

Параметры

$email необязательно
$name необязательно

Возвращаемое значение

Cake\Mailer\Email

replyTo()source public

replyTo( $email , $name )

Параметры

$email необязательно
$name необязательно

Возвращаемое значение

Cake\Mailer\Email

returnPath()source public

returnPath( $email , $name )

Параметры

$email необязательно
$name необязательно

Возвращаемое значение

Cake\Mailer\Email

sender()source public

sender( $email , $name )

Параметры

$email необязательно
$name необязательно

Возвращаемое значение

Cake\Mailer\Email

setHeaders()source public

setHeaders( array $headers )

Параметры

массив $headers

Возвращаемое значение

Cake\Mailer\Email

subject()source public

subject( $subject )

Параметры

$subject необязательно

Возвращаемое значение

Cake\Mailer\Email

template()source public

template( $template , $layout )

Параметры

$template необязательно
$layout необязательно

Возвращаемое значение

Cake\Mailer\Email

theme()source public

theme( $theme )

Параметры

$theme необязательно

Возвращаемое значение

Cake\Mailer\Email

to()source public

to( $email , $name )

Параметры

$email необязательно
$name необязательно

Возвращаемое значение

Cake\Mailer\Email

transport()source public

transport( $name )

Параметры

$name необязательный

Возвращает

Cake\Mailer\Email

viewRender()source public

viewRender( $viewClass )

Параметры

$viewClass необязательный

Возвращает

Cake\Mailer\Email

viewVars()source public

viewVars( $viewVars )

Параметры

$viewVars необязательный

Возвращает

Cake\Mailer\Email

Подробное описание свойств

$_clonedEmailsource

protected string

Клонированный экземпляр Email для восстановления состояния после отправки письма действием почтового отправителя.

$_emailsource

protected Cake\Mailer\Email

Экземпляр Email.

$namesource

public static string

Имя почтового отправителя.

© 2005–2016 The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
http://api.cakephp.org/3.2/class-Cake.Mailer.Mailer.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API