Spec-Zone.ru › CakePHP 3.6

Класс Mailer

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

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

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

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

class UserMailer extends Mailer
{
    public function resetPassword($user)
    {
        $this
            ->setSubject('Reset Password')
            ->setTo($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
    Cake\Mailer\Email

    Клонированный экземпляр 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 deprecated
    Устанавливает используемый макет.
  • reset() protected
    Сброс экземпляра email.
  • send() public
    Отправляет электронную почту.
  • set() public
    Устанавливает переменные представления email.
  • viewBuilder() public
    Получить обработчик представлений экземпляра Email.

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

__call()source public

__call( string $method , array $args )

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

Параметры

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

Возвращает


$this|mixed

__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 deprecated

layout( string $layout )

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

Устаревшее

3.4.0 Используйте setLayout(), который устанавливает макет в классе email вместо этого.

Параметры

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

Возвращает


$this

reset()source protected

reset( )

Сбросить экземпляр email.

Возвращает


$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 )

Устанавливает переменные представления email.

Параметры

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

Возвращает


$this

viewBuilder()source public

viewBuilder( )

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

Возвращает

Cake\View\ViewBuilder

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

_setModelClass()source protected

_setModelClass( string $name )

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

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

Параметры

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

getModelType()source public

getModelType( )

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

Возвращает

строка

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
Если тип модели не определен
END_OF_DOCUMENT_MARKER

modelFactory()source public

modelFactory( string $type , callable $factory )

Переопределить существующую вызываемую функцию для генерации репозиториев заданного типа.

Параметры

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

modelType()source public deprecated

modelType( string|null $modelType = null )

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

Устарело

3.5.0 Используйте getModelType()/setModelType() вместо этого.

Параметры

строка|null $modelType опционально null
Тип модели или null для получения текущего

Возвращает

строка|Cake\Datasource\ModelAwareTrait
$this

setModelType()source public

setModelType( string $modelType )

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

Параметры

строка $modelType
Тип модели

Возвращает


$this

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

addAttachments()source public

addAttachments( $attachments )

Parameters

$attachments

Returns

Cake\Mailer\Email

addBcc()source public

addBcc( $email , $name = )

Parameters

$email
$name optional

Returns

Cake\Mailer\Email

addCc()source public

addCc( $email , $name = )

Parameters

$email
$name optional

Returns

Cake\Mailer\Email

addHeaders()source public

addHeaders( array $headers )

Parameters

массив $headers

Returns

Cake\Mailer\Email

addTo()source public

addTo( $email , $name = )

Parameters

$email
$name optional

Returns

Cake\Mailer\Email

attachments()source public

attachments( $attachments = )

Parameters

$attachments optional

Returns

Cake\Mailer\Email

bcc()source public

bcc( $email = , $name = )

Parameters

$email optional
$name optional

Returns

Cake\Mailer\Email

cc()source public

cc( $email = , $name = )

Parameters

$email optional
$name optional

Returns

Cake\Mailer\Email

charset()source public

charset( $charset = )

Parameters

$charset optional

Returns

Cake\Mailer\Email

domain()source public

domain( $domain = )

Parameters

$domain optional

Returns

Cake\Mailer\Email

emailFormat()source public

emailFormat( $format = )

Parameters

$format optional

Returns

Cake\Mailer\Email

from()source public

from( $email = , $name = )

Parameters

$email optional
$name optional

Returns

Cake\Mailer\Email

getAttachments()source public

getAttachments( )

Returns

массив

getBcc()source public

getBcc( )

Returns

массив

getCc()source public

getCc( )

Returns

массив

getCharset()source public

getCharset( )

Returns

строка

getDomain()source public

getDomain( )

Returns

строка

getEmailFormat()source public

getEmailFormat( )

Returns

строка

getFrom()source public

getFrom( )

Returns

массив

getHeaderCharset()source public

getHeaderCharset( )

Returns

строка

getHeaders()source public

getHeaders( array $include = )

Parameters

массив $include optional

Returns

Cake\Mailer\Email

getHelpers()source public

getHelpers( )

Returns

массив

getLayout()source public

getLayout( )

Returns

строка

getMessageId()source public

getMessageId( )

Returns

boolean|строка

getProfile()source public

getProfile( )

Returns

строка|массив

getReadReceipt()source public

getReadReceipt( )

Returns

массив

getReplyTo()source public

getReplyTo( )

Returns

массив

getReturnPath()source public

getReturnPath( )

Returns

массив

getSender()source public

getSender( )

Returns

массив

getSubject()source public

getSubject( )

Returns

строка

getTemplate()source public

getTemplate( )

Returns

строка

getTheme()source public

getTheme( )

Returns

строка

getTo()source public

getTo( )

Returns

массив

getTransport()source public

getTransport( )

Returns

Cake\Mailer\AbstractTransport

getViewRenderer()source public

getViewRenderer( )

Возвращает

строка

getViewVars()source public

getViewVars( )

Возвращает

массив

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

setAttachments()source public

setAttachments( $attachments )

Параметры

$attachments

Возвращает

Cake\Mailer\Email

setBcc()source public

setBcc( $email , $name = )

Параметры

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

Возвращает

Cake\Mailer\Email

setCc()source public

setCc( $email , $name = )

Параметры

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

Возвращает

Cake\Mailer\Email

setCharset()source public

setCharset( $charset )

Параметры

$charset

Возвращает

Cake\Mailer\Email

setDomain()source public

setDomain( $domain )

Параметры

$domain

Возвращает

Cake\Mailer\Email

setEmailFormat()source public

setEmailFormat( $format )

Параметры

$format

Возвращает

Cake\Mailer\Email

setFrom()source public

setFrom( $email , $name = )

Параметры

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

Возвращает

Cake\Mailer\Email

setHeaderCharset()source public

setHeaderCharset( $charset )

Параметры

$charset

Возвращает

Cake\Mailer\Email

setHeaders()source public

setHeaders( array $headers )

Параметры

массив $headers

Возвращает

Cake\Mailer\Email

setHelpers()source public

setHelpers( array $helpers )

Параметры

массив $helpers

Возвращает

Cake\Mailer\Email

setLayout()source public

setLayout( $layout )

Параметры

$layout

Возвращает

Cake\Mailer\Email

setMessageId()source public

setMessageId( $message )

Параметры

$message

Возвращает

Cake\Mailer\Email

setProfile()source public

setProfile( $config )

Параметры

$config

Возвращает

Cake\Mailer\Email

setReadReceipt()source public

setReadReceipt( $email , $name = )

Параметры

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

Возвращает

Cake\Mailer\Email

setReplyTo()source public

setReplyTo( $email , $name = )

Параметры

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

Возвращает

Cake\Mailer\Email

setReturnPath()source public

setReturnPath( $email , $name = )

Параметры

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

Возвращает

Cake\Mailer\Email

setSender()source public

setSender( $email , $name = )

Параметры

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

Возвращает

Cake\Mailer\Email

setSubject()source public

setSubject( $subject )

Параметры

$subject

Возвращает

Cake\Mailer\Email

setTemplate()source public

setTemplate( $template )

Параметры

$template

Возвращает

Cake\Mailer\Email

setTheme()source public

setTheme( $theme )

Параметры

$theme

Возвращает

Cake\Mailer\Email

setTo()source public

setTo( $email , $name = )

Параметры

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

Возвращает

Cake\Mailer\Email

setTransport()source public

setTransport( $name )

Параметры

$name

Возвращает

Cake\Mailer\Email

setViewRenderer()source public

setViewRenderer( $viewClass )

Параметры

$viewClass

Возвращает

Cake\Mailer\Email

setViewVars()source public

setViewVars( $viewVars )

Параметры

$viewVars

Возвращает

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 Cake\Mailer\Email

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

$_emailsource

protected Cake\Mailer\Email

Экземпляр Email.

$namesource

public static string

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

© 2005–present 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.
https://api.cakephp.org/3.6/class-Cake.Mailer.Mailer.html

Spec-Zone.ru

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