Spec-Zone.ru › CakePHP 3.4

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

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

Устарело

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

Параметры

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

Возвращает


$this

reset()source protected

reset( )

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

Возвращает


$this

send()source public

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

Отправляет email.

Параметры

строка $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
Если не был определён тип модели

modelFactory()source public

modelFactory( string $type , callable $factory )

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

Параметры

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

modelType()source public

modelType( string|null $modelType null )

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

Устаревшее

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

Параметры

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

Возвращает

string|Cake\Datasource\ModelAwareTrait
$this

setModelType()source public

setModelType( string $modelType )

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

Параметры

string $modelType
Тип модели

Возвращает


$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

getAttachments()source public

getAttachments( )

Возвращает

массив

getBcc()source public

getBcc( )

Возвращает

массив

getCc()source public

getCc( )

Возвращает

массив

getCharset()source public

getCharset( )

Возвращает

строка

getDomain()source public

getDomain( )

Возвращает

строка

getEmailFormat()source public

getEmailFormat( )

Возвращает

строка

getFrom()source public

getFrom( )

Возвращает

массив

getHeaderCharset()source public

getHeaderCharset( )

Возвращает

строка

getHeaders()source public

getHeaders( array $include )

Параметры

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

Возвращает

Cake\Mailer\Email

getHelpers()source public

getHelpers( )

Возвращает

массив

getLayout()source public

getLayout( )

Возвращает

строка

getMessageId()source public

getMessageId( )

Возвращает

boolean|строка

getProfile()source public

getProfile( )

Возвращает

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

getReadReceipt()source public

getReadReceipt( )

Возвращает

массив

getReplyTo()source public

getReplyTo( )

Возвращает

массив

getReturnPath()source public

getReturnPath( )

Возвращает

массив

getSender()source public

getSender( )

Возвращает

массив

getSubject()source public

getSubject( )

Возвращает

строка

getTemplate()source public

getTemplate( )

Возвращает

строка

getTheme()source public

getTheme( )

Возвращает

строка

getTo()source public

getTo( )

Возвращает

массив

getTransport()source public

getTransport( )

Возвращает

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 string

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

$_emailsource

protected Cake\Mailer\Email

Экземпляр Email.

$namesource

public static string

Имя маилера.

© 2005–2017 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.4/class-Cake.Mailer.Mailer.html

Spec-Zone.ru

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