Класс Email
Класс CakePHP Email.
Этот класс используется для отправки сообщений в формате Internet Message Format, основанном на стандарте, описанном в http://www.rfc-editor.org/rfc/rfc2822.txt
Конфигурация
Конфигурация для Email управляется методами Email::config() и Email::configTransport(). Email::config() можно использовать для добавления или чтения профиля конфигурации для экземпляров Email. После создания профили конфигурации можно использовать повторно для разных электронных сообщений, которые отправляет ваше приложение.
- Cake\Mailer\Email реализует JsonSerializable, Serializable использует Cake\Core\StaticConfigTrait , Cake\View\ViewVarsTrait
Краткое описание констант
-
string'/^((?:[\p{L}0-9.!#$%&\'*+\/=?^_`{|}~-]+)*@[\p{L}0-9-.]+)$/ui' -
integer998 -
integer78 -
string'html' -
string'text'
Краткое описание свойств
-
$_appCharsetprotectedКодировка символов на уровне приложения, используемая для кодирования заголовков и телаstring -
$_attachmentsprotectedСписок файлов, которые должны быть прикреплены к электронному письму.array -
$_bccprotectedСкрытая копияarray -
$_boundaryprotectedЕсли установлено, разделитель для многочастных MIME-сообщенийstring -
$_ccprotectedКопияarray -
$_charset8bitprotected8-битные наборы символовarray -
$_contentTypeCharsetprotectedОпределение имени набора символов Content-Typearray -
$_domainprotectedstringДомен для генерации messageId. Необходимо вручную установить для отправки из командной строки, так как env('HTTP_HOST') пуст
- Массив, сопоставляющий схемы URL с полными именами классов транспорта
array -
$_emailFormatprotectedВ каком формате должно быть отправлено электронное письмоstring -
$_emailFormatAvailableprotectedДоступные форматы для отправки.array -
$_emailPatternprotectedРегулярное выражение для проверки адреса электронной почтыstring -
$_fromprotectedАдрес электронной почты, с которого отправляется сообщениеarray -
$_headersprotectedarrayАссоциативный массив пользовательских заголовков. Ключи будут иметь префикс «X-» в соответствии с RFC2822 Раздел 4.7.5
-
$_htmlMessageprotectedHTML-сообщениеstring -
$_messageprotectedКонечное сообщение для отправкиarray -
$_messageIdprotectedИдентификатор сообщенияboolean|string -
$_profileprotectedarrayКопия профиля конфигурации для этого экземпляра. Эту копию можно изменить с помощью Email::profile().
-
$_readReceiptprotectedЭлектронное письмо для подтверждения прочтенияarray -
$_replyToprotectedАдрес электронной почты, на который должен отвечать получательarray -
$_returnPathprotectedarrayАдрес электронной почты, который будет использоваться в случае возникновения ошибок, таких как - Отдалённый почтовый сервер недоступен - Отдалённый пользователь превысил свой лимит - Неизвестный пользователь
-
$_senderprotectedОтправительarray -
$_subjectprotectedТема письмаstring -
$_textMessageprotectedТекстовое сообщениеstring -
$_toprotectedПолучатель электронного письмаarray - Экземпляр транспорта, который будет использоваться для отправки почты.
$_transportprotected - Профили конфигурации для транспортов.
array -
$charsetpublicКодировка символов тела электронного письмаstring -
$headerCharsetpublicstringКодировка символов заголовка электронного письма. Если null, будет использоваться свойство $charset по умолчанию
Унаследованные свойства
Краткое описание методов
- __clone() publicКлонирование экземпляра ViewBuilder при клонировании объекта электронной почты.
- __construct() publicКонструктор
- _addEmail() protectedДобавить электронную почту
- _applyConfig() protectedПрименение конфигурации к экземпляру
- _attachFiles() protectedПрикрепить файлы, не встроенные в сообщение, добавив содержимое файла внутри границ.
- _attachInlineFiles() protectedПрикрепить встроенные/вложенные файлы к сообщению.
- _checkViewVars() protectedИтерирует по хэшу для очистки и нормализации.
- _constructTransport() protectedСоздание экземпляра транспорта из данных конфигурации.
- _createBoundary() protectedСоздание уникального идентификатора границы
- _decode() protectedДекодирование указанной строки
- _encode() protectedКодирование указанной строки с использованием текущей кодировки
- _encodeString() protected
Перевод строки из одной кодировки в другую, если значение App.encoding отличается и функция mb_convert_encoding существует
- _formatAddress() protectedФорматирование адресов
- _getContentTransferEncoding() protectedВозвращение значения Content-Transfer Encoding на основе установленной кодировки
- _getContentTypeCharset() protectedВозвращение значения кодировки для Content-Type.
- _getTypes() protectedПолучение типов текстовых тел, присутствующих в этом сообщении электронной почты
- _logDelivery() protectedРегистрация доставки сообщения электронной почты.
- _readFile() protectedЧтение содержимого файла и возвращение его base64-версии.
- _render() protectedОтображение тела электронного письма.
- _renderTemplates() protected
Создание и установка всех свойств представления, необходимых для отображения шаблонизированных электронных писем. Если шаблон не задан, возвращается $content в виде хэша типов текстового содержимого для электронного письма.
- _setEmail() protectedУстановить электронную почту
- _setEmailSingle() protectedУстановить только 1 электронное письмо
- _validateEmail() protectedПроверка адреса электронной почты
- _wrap() protectedУпаковка сообщения в соответствии с RFC 2822 - 2.1.1
- addAttachments() publicДобавление вложений
- addBcc() publicДобавление BCC
- addCc() publicДобавление Cc
- addHeaders() publicДобавление заголовков к сообщению
- addTo() publicДобавление получателей
- attachments() publicДобавление вложений к сообщению электронной почты
- bcc() publicBCC
- cc() publicCc
- charset() publicУстановка/получение кодировки
- Добавление или чтение конфигурации транспорта.
- Возвращает массив, содержащий конфигурации транспортных средств с именами
- createFromArray() publicНастройка объекта email из сериализованной конфигурации.
- Статический метод для быстрого создания экземпляра \Cake\Mailer\Email
- domain() publicДомен как верхний уровень (часть после @)
- Удаление конфигурации транспорта.
- emailFormat() publicФормат электронной почты
- emailPattern() publicУстановка/получение emailPattern
- from() publicОтправитель
- getHeaders() publicПолучить список заголовков
- getOriginalSubject() publicПолучить исходный предмет без кодирования
- headerCharset() publicУстановка/получение кодировки заголовков
- helpers() publicПомощники, которые будут использованы при отображении
- jsonSerialize() public
Сериализация объекта email в значение, которое можно напрямую сериализовать и использовать для клонирования этого экземпляра email.
- message() publicПолучить сгенерированное сообщение (используется классами транспорта)
- messageId() publicИдентификатор сообщения
- profile() publicПолучить/установить профиль конфигурации для использования этим экземпляром.
- readReceipt() publicПолучение уведомления о подтверждении прочтения (заголовок Disposition-Notification-To)
- replyTo() publicОтвет
- reset() publicСбросить все внутренние переменные, чтобы отправить новое электронное письмо.
- returnPath() publicАдрес возврата
- send() publicОтправка электронного письма с использованием указанного содержимого, шаблона и макета
- sender() publicОтправитель
- serialize() publicСериализация объекта Email.
- setHeaders() publicУстановка заголовков для сообщения
- subject() publicУстановка/получение темы.
- template() publicШаблон и макет
- theme() publicТема для использования при отображении
- to() publicПолучатели
- transport() publicПолучение/установка транспорта.
- unserialize() publicДесериализация объекта Email.
- viewRender() publicКласс представления для рендеринга
- viewVars() publicПеременные для установки при отображении
Подробное описание методов
__clone()source public
__clone( )
Клонировать экземпляр ViewBuilder при клонировании объекта электронной почты.
__construct()source public
__construct( array|string|null $config null )
Конструктор
Параметры
- array|string|null
$configнеобязательный null - Массив конфигураций или строка для загрузки конфигураций из email.php
_addEmail()source protected
_addEmail( string $varName , string|array $email , string $name )
Добавить электронную почту
Параметры
- string
$varName - Имя свойства
- string|array
$email Строка с электронной почтой, Массив с электронной почтой в качестве ключа, именем в качестве значения или электронной почтой в качестве значения (без имени)
- string
$name - Имя
Возвращает
$this
Исключения
InvalidArgumentException_applyConfig()source protected
_applyConfig( string|array $config )
Применить конфигурацию к экземпляру
Параметры
- string|array
$config - Параметры конфигурации.
Исключения
InvalidArgumentExceptionПри использовании несуществующей конфигурации.
_attachFiles()source protected
_attachFiles( string|null $boundary null )
Прикрепить файлы, не встроенные в сообщение, добавив содержимое файла внутри границ.
Параметры
- string|null
$boundaryнеобязательный null - Граница для использования. Если null, будет использоваться по умолчанию $this->_boundary
Возвращает
arrayМассив строк для добавления в сообщение
_attachInlineFiles()source protected
_attachInlineFiles( string|null $boundary null )
Прикрепить встроенные файлы к сообщению.
Параметры
- string|null
$boundaryнеобязательный null - Граница для использования. Если null, будет использоваться по умолчанию $this->_boundary
Возвращает
arrayМассив строк для добавления в сообщение
_checkViewVars()source protected
_checkViewVars( mixed $item , string $key )
Итерация по хэшу для очистки и нормализации.
Параметры
- mixed
$item - Ссылка на значение переменной представления.
- string
$key - Ключ переменной представления.
_constructTransport()source protected
_constructTransport( string $name )
Создать экземпляр транспорта из данных конфигурации.
Параметры
- string
$name - Имя конфигурации транспорта для создания.
Возвращает
Cake\Mailer\AbstractTransportИсключения
InvalidArgumentExceptionПри отсутствии или некорректной конфигурации транспорта.
_decode()source protected
_decode( string $text )
Декодировать указанную строку
Параметры
- string
$text - Строка для декодирования
Возвращает
stringДекодированная строка
_encode()source protected
_encode( string $text )
Кодировать указанную строку с помощью текущего набора символов
Параметры
- string
$text - Строка для кодирования
Возвращает
stringЗакодированная строка
_encodeString()source protected
_encodeString( string $text , string $charset )
Преобразует строку в другой набор символов, если значение App.encoding отличается, и функция mb_convert_encoding существует
Параметры
- string
$text - Текст, подлежащий преобразованию
- string
$charset - Кодировка назначения
Возвращает
string_formatAddress()source protected
_formatAddress( array $address )
Форматировать адреса
Если адрес содержит не буквенно-цифровые/пробельные символы, он будет заключен в кавычки, так как символы, такие как : и ,, известны тем, что вызывают проблемы в заголовках адресов.
Параметры
- array
$address - Адреса для форматирования.
Возвращает
array_getContentTransferEncoding()source protected
_getContentTransferEncoding( )
Возвращает значение Content-Transfer Encoding, основанное на установленной кодировке символов
Возвращает
string_getContentTypeCharset()source protected
_getContentTypeCharset( )
Возвращает значение кодировки символов для Content-Type.
Проверяет типы обратной совместимости/обработки, которые включают обходные пути для устаревших японских наборов символов.
Возвращает
string_getTypes()source protected
_getTypes( )
Получить типы текстового тела, которые содержатся в этом сообщении электронной почты
Возвращает
arrayМассив типов. Действительные типы — 'text' и 'html'
_logDelivery()source protected
_logDelivery( array $contents )
Записать доставку сообщения электронной почты.
Параметры
- array
$contents - Содержимое с ключами 'headers' и 'message'.
_readFile()source protected
_readFile( string $path )
Прочитать содержимое файла и вернуть базовый 64-версию содержимого файла.
Параметры
- string
$path - Абсолютный путь к файлу для чтения.
Возвращает
stringСодержимое файла в кодировке base64
_render()source protected
_render( array $content )
Отобразить тело электронной почты.
Параметры
- array
$content - Содержимое для отображения
Возвращает
arrayТело электронной почты, готовое к отправке
_renderTemplates()source protected
_renderTemplates( string $content )
Создать и установить все свойства представления, необходимые для рендеринга шаблонов электронных писем. Если шаблон не задан, $content будет возвращен в хэше типов текстового содержимого для электронной почты.
Параметры
- string
$content - Содержимое, переданное из send() в большинстве случаев.
Возвращает
arrayОтображенное содержимое с ключами html и text.
_setEmail()source protected
_setEmail( string $varName , string|array $email , string $name )
Установить электронную почту
Параметры
- string
$varName - Имя свойства
- string|array
$email Строка с электронной почтой, Массив с электронной почтой в качестве ключа, именем в качестве значения или электронной почтой в качестве значения (без имени)
- string
$name - Имя
Возвращает
$this
Исключения
InvalidArgumentException_setEmailSingle()source protected
_setEmailSingle( string $varName , string|array $email , string $name , string $throwMessage )
Установить только 1 адрес электронной почты
Параметры
- string
$varName - Имя свойства
- string|array
$email Строка с адресом электронной почты, Массив с адресом электронной почты в качестве ключа, имя в качестве значения или адрес электронной почты в качестве значения (без имени)
- string
$name - Имя
- string
$throwMessage - Сообщение об ошибке
Возвращаемое значение
$this
Исключения
InvalidArgumentException_validateEmail()source protected
_validateEmail( string $email )
Проверить адрес электронной почты
Параметры
- string
$email - Адрес электронной почты для проверки
Исключения
InvalidArgumentExceptionЕсли адрес электронной почты не проходит проверку
_wrap()source protected
_wrap( string $message , integer $wrapLength Email::LINE_LENGTH_MUST )
Упаковать сообщение в соответствии с RFC 2822 - 2.1.1
Параметры
- string
$message - Сообщение для упаковки
- integer
$wrapLengthнеобязательно Email::LINE_LENGTH_MUST - Длина строки
Возвращаемое значение
arrayУпакованное сообщение
addAttachments()source public
addAttachments( string|array $attachments )
Добавить вложения
Параметры
- string|array
$attachments - Имя файла или массив имён файлов
Возвращаемое значение
$this
Исключения
InvalidArgumentExceptionСм. также
\Cake\Mailer\Email::attachments()addBcc()source public
addBcc( string|array $email , string|null $name null )
Добавить Bcc
Параметры
- string|array
$email Null для получения, Строка с адресом электронной почты, Массив с адресом электронной почты в качестве ключа, имя в качестве значения или адрес электронной почты в качестве значения (без имени)
- string|null
$nameнеобязательно null - Имя
Возвращаемое значение
$this
addCc()source public
addCc( string|array $email , string|null $name null )
Добавить Cc
Параметры
- string|array
$email Null для получения, Строка с адресом электронной почты, Массив с адресом электронной почты в качестве ключа, имя в качестве значения или адрес электронной почты в качестве значения (без имени)
- string|null
$nameнеобязательно null - Имя
Возвращаемое значение
$this
addHeaders()source public
addHeaders( array $headers )
Добавить заголовок к сообщению
Параметры
- array
$headers - Заголовки для установки.
Возвращаемое значение
$this
addTo()source public
addTo( string|array $email , string|null $name null )
Добавить получателя
Параметры
- string|array
$email Null для получения, Строка с адресом электронной почты, Массив с адресом электронной почты в качестве ключа, имя в качестве значения или адрес электронной почты в качестве значения (без имени)
- string|null
$nameнеобязательно null - Имя
Возвращаемое значение
$this
attachments()source public
attachments( string|array|null $attachments null )
Добавить вложения к сообщению электронной почты
Вложения можно определить несколькими способами, в зависимости от требуемого уровня управления:
Прикрепить один файл:
$email->attachments('path/to/file'); Прикрепить файл с другим именем файла:
$email->attachments(['custom_name.txt' => 'path/to/file.txt']);
Прикрепить файл и указать дополнительные свойства:
$email->attachments(['custom_name.png' => [
'file' => 'path/to/file',
'mimetype' => 'image/png',
'contentId' => 'abc123',
'contentDisposition' => false
]
]); Прикрепить файл из строки и указать дополнительные свойства:
$email->attachments(['custom_name.png' => [
'data' => file_get_contents('path/to/file'),
'mimetype' => 'image/png'
]
]); Ключ contentId позволяет указать встроенное вложение. В тексте вашего сообщения электронной почты вы можете использовать <img src="cid:abc123" /> для отображения изображения встроеным.
Ключ contentDisposition позволяет отключить заголовок Content-Disposition, что может улучшить совместимость вложений с клиентами электронной почты Outlook.
Параметры
- string|array|null
$attachmentsнеобязательно null - Строка с именем файла или массив имён файлов
Возвращаемое значение
array|Cake\Mailer\Email$this Массив вложений при получении или $this при установке.
Исключения
InvalidArgumentExceptionbcc()source public
bcc( string|array|null $email null , string|null $name null )
Bcc
Параметры
- string|array|null
$emailнеобязательно null Null для получения, Строка с адресом электронной почты, Массив с адресом электронной почты в качестве ключа, имя в качестве значения или адрес электронной почты в качестве значения (без имени)
- string|null
$nameнеобязательно null - Имя
Возвращаемое значение
array|Cake\Mailer\Email$this
cc()source public
cc( string|array|null $email null , string|null $name null )
Cc
Параметры
- string|array|null
$emailнеобязательно null Null для получения, Строка с адресом электронной почты, Массив с адресом электронной почты в качестве ключа, имя в качестве значения или адрес электронной почты в качестве значения (без имени)
- string|null
$nameнеобязательно null - Имя
Возвращаемое значение
array|Cake\Mailer\Email$this
charset()source public
charset( string|null $charset null )
Установка/получение кодировки символов
Параметры
- string|null
$charsetнеобязательно null - Кодировка символов.
Возвращаемое значение
stringthis->charset
configTransport()source public static
configTransport( string|array $key , array|Cake\Mailer\AbstractTransport|null $config null )
Добавление или чтение конфигурации транспорта.
Используйте этот метод для определения транспортов, которые будут использоваться в профилях доставки. После определения конфигурации изменить её нельзя, и нужно использовать Email::dropTransport() для её очистки.
При использовании массива данных конфигурации для каждого отправляемого сообщения будет создан новый транспорт. При использовании замыкания, замыкание будет вычисляться для каждого сообщения.
Ключ className используется для определения класса, используемого для транспорта. Это может быть короткое имя или полное имя класса.
Параметры
- string|array
$key Имя конфигурации для чтения/записи. Или массив из нескольких транспортов для установки.
- array|
Cake\Mailer\AbstractTransport|null$configнеобязательно null Массив данных конфигурации или экземпляр транспорта.
Возвращаемое значение
array|nullnull при установке или массив данных при чтении.
Исключения
BadMethodCallExceptionПри изменении существующей конфигурации.
configuredTransport()source public static
configuredTransport( )
Возвращает массив, содержащий конфигурации транспортов с указанными именами
Возвращаемое значение
arrayМассив конфигураций.
createFromArray()source public
createFromArray( array $config )
Настройка экземпляра объекта электронной почты из сериализованной конфигурации.
Параметры
- array
$config - Массив конфигурации электронной почты.
Возвращаемое значение
$this Настроенный экземпляр объекта электронной почты.
deliver()source public static
deliver( string|array|null $to null , string|null $subject null , string|array|null $message null , string|array $transportConfig 'default' , boolean $send true )
Статический метод для быстрого создания экземпляра \Cake\Mailer\Email
Параметры
- string|array|null
$toнеобязательно null - Адрес для отправки (см. Cake\Mailer\Email::to()). Если null, будет попытка использовать 'to' из конфигурации транспорта
- string|null
$subjectнеобязательно null - Строка темы или null для использования 'subject' из конфигурации транспорта
- string|array|null
$messageнеобязательно null - Строка с сообщением или массив с переменными для использования в рендеринге
- string|array
$transportConfigнеобязательно 'default' - Строка для использования конфигурации из EmailConfig или массив с конфигурациями
- boolean
$sendнеобязательно true - Отправить электронное письмо или просто вернуть экземпляр с предварительной настройкой
Возвращает
Cake\Mailer\EmailЭкземпляр Cake\Mailer\Email
Исключения
InvalidArgumentExceptiondomain()source public
domain( string|null $domain null )
Домен как верхний уровень (часть после @)
Параметры
- string|null
$domainнеобязательно null - Вручную установить домен для рассылки из командной строки
Возвращает
string|Cake\Mailer\Email$this
dropTransport()source public static
dropTransport( string $key )
Удалить конфигурацию транспорта.
Параметры
- string
$key - Имя транспорта для удаления.
emailFormat()source public
emailFormat( string|null $format null )
Формат электронного письма
Параметры
- string|null
$formatнеобязательно null - Форматирующая строка.
Возвращает
string|Cake\Mailer\Email$this
Исключения
InvalidArgumentExceptionemailPattern()source public
emailPattern( string|boolean|null $regex false )
Установка/получение шаблона электронного письма
Параметры
- string|boolean|null
$regexнеобязательно false Шаблон для проверки адреса электронной почты, null для отмены шаблона и использования filter_var(), false или ничего для возвращения текущего значения
Возвращает
string|Cake\Mailer\Email$this
from()source public
from( string|array|null $email null , string|null $name null )
Отправитель
Параметры
- string|array|null
$emailнеобязательно null Null для получения, строка с адресом электронной почты, массив с адресом электронной почты в качестве ключа, именем в качестве значения или адресом электронной почты в качестве значения (без имени)
- string|null
$nameнеобязательно null - Имя
Возвращает
array|Cake\Mailer\Email$this
Исключения
InvalidArgumentExceptiongetHeaders()source public
getHeaders( array $include [] )
Получить список заголовков
Включает:
fromreplyToreadReceiptreturnPathtoccbccsubject
Параметры
- array
$includeнеобязательно [] - Список заголовков.
Возвращает
arraygetOriginalSubject()source public
getOriginalSubject( )
Получить исходную тему без кодирования
Возвращает
stringИсходная тема
headerCharset()source public
headerCharset( string|null $charset null )
Установка/получение кодировки символов заголовка
Параметры
- string|null
$charsetнеобязательно null - Кодировка символов.
Возвращает
stringthis->charset
helpers()source public
helpers( array|null $helpers null )
Вспомогательные функции для использования в рендеринге
Параметры
- array|null
$helpersнеобязательно null - Список вспомогательных функций.
Возвращает
array|Cake\Mailer\Email$this
jsonSerialize()source public
jsonSerialize( )
Сериализует объект электронного письма в значение, которое можно напрямую сериализовать и повторно использовать для клонирования этого экземпляра электронного письма.
Есть определенные ограничения для viewVars, которые стоит знать:
- ORM\Query, выполняемые и хранящиеся в качестве набора результатов
- SimpleXmlElements, хранящиеся в качестве ассоциативного массива
- Исключения, хранящиеся в виде строк
- Ресурсы, \Closure и \PDO не поддерживаются.
Возвращает
arrayСериализуемый массив свойств конфигурации.
Исключения
ExceptionКогда объект view var не может быть должным образом сериализован.
Реализация
JsonSerializable::jsonSerialize() message()source public
message( string|null $type null )
Получить сгенерированное сообщение (используется классами транспорта)
Параметры
- string|null
$typeнеобязательно null - Использовать константы MESSAGE_* или null для возвращения полного сообщения в виде массива
Возвращает
string|arrayСтрока, если тип есть, массив, если тип null
messageId()source public
messageId( boolean|string|null $message null )
Идентификатор сообщения
Параметры
- boolean|string|null
$messageнеобязательно null - True для генерации нового Message-ID, False для игнорирования (не отправлять в email), Строка для установки в качестве Message-ID
Возвращает
boolean|string|Cake\Mailer\Email$this
Исключения
InvalidArgumentExceptionprofile()source public
profile( null|string|array $config null )
Получение/установка профиля конфигурации для использования в этом экземпляре.
Параметры
- null|string|array
$configнеобязательно null Строка с именем конфигурации или массив с конфигурацией или null для возвращения текущей конфигурации.
Возвращает
string|array|Cake\Mailer\Email$this
readReceipt()source public
readReceipt( string|array|null $email null , string|null $name null )
Получение/установка подтверждения о прочтении (заголовок Disposition-Notification-To)
Параметры
- string|array|null
$emailнеобязательно null Null для получения, строка с адресом электронной почты, массив с адресом электронной почты в качестве ключа, именем в качестве значения или адресом электронной почты в качестве значения (без имени)
- string|null
$nameнеобязательно null - Имя
Возвращает
array|Cake\Mailer\Email$this
Исключения
InvalidArgumentExceptionreplyTo()source public
replyTo( string|array|null $email null , string|null $name null )
Ответ
Параметры
- string|array|null
$emailнеобязательно null Null для получения, строка с адресом электронной почты, массив с адресом электронной почты в качестве ключа, именем в качестве значения или адресом электронной почты в качестве значения (без имени)
- string|null
$nameнеобязательно null - Имя
Возвращает
array|Cake\Mailer\Email$this
Исключения
InvalidArgumentExceptionreset()source public
reset( )
Сбросьте все внутренние переменные, чтобы отправить новое письмо.
Возвращает
$this
returnPath()source public
returnPath( string|array|null $email null , string|null $name null )
Возвращаемый адрес
Параметры
- string|array|null
$emailнеобязательно null Null для получения, Строка с адресом электронной почты, Массив с адресом электронной почты в качестве ключа, именем в качестве значения или адресом электронной почты в качестве значения (без имени)
- string|null
$nameнеобязательно null - Имя
Возвращает
array|Cake\Mailer\Email$this
Исключения
InvalidArgumentExceptionsend()source public
send( string|array|null $content null )
Отправить письмо с указанным содержимым, шаблоном и макетом
Параметры
- string|array|null
$contentнеобязательно null - Строка с сообщением или массив с сообщениями
Возвращает
arrayИсключения
BadMethodCallExceptionsender()source public
sender( string|array|null $email null , string|null $name null )
Отправитель
Параметры
- string|array|null
$emailнеобязательно null Null для получения, Строка с адресом электронной почты, Массив с адресом электронной почты в качестве ключа, именем в качестве значения или адресом электронной почты в качестве значения (без имени)
- string|null
$nameнеобязательно null - Имя
Возвращает
array|Cake\Mailer\Email$this
Исключения
InvalidArgumentExceptionserialize()source public
serialize( )
Сериализует объект Email.
Возвращает
stringРеализация
Serializable::serialize() setHeaders()source public
setHeaders( array $headers )
Устанавливает заголовки для сообщения
Параметры
- array
$headers - Ассоциативный массив, содержащий устанавливаемые заголовки.
Возвращает
$this
subject()source public
subject( string|null $subject null )
Получение/установка темы.
Параметры
- string|null
$subjectнеобязательно null - Строка темы.
Возвращает
string|Cake\Mailer\Email$this
template()source public
template( boolean|string $template false , boolean|string $layout false )
Шаблон и макет
Параметры
- boolean|string
$templateнеобязательно false - Имя шаблона или null, чтобы не использовать
- boolean|string
$layoutнеобязательно false - Имя макета или null, чтобы не использовать
Возвращает
array|Cake\Mailer\Email$this
theme()source public
theme( string|null $theme null )
Тема для использования при рендеринге
Параметры
- string|null
$themeнеобязательно null - Имя темы.
Возвращает
string|Cake\Mailer\Email$this
to()source public
to( string|array|null $email null , string|null $name null )
Кому
Параметры
- string|array|null
$emailнеобязательно null Null для получения, Строка с адресом электронной почты, Массив с адресом электронной почты в качестве ключа, именем в качестве значения или адресом электронной почты в качестве значения (без имени)
- string|null
$nameнеобязательно null - Имя
Возвращает
array|Cake\Mailer\Email$this
transport()source public
transport( string|Cake\Mailer\AbstractTransport|null $name null )
Получение/установка транспорта.
При установке транспорта можно использовать имя настроенного транспорта или предоставить созданный транспорт.
Параметры
- string|
Cake\Mailer\AbstractTransport|null$nameнеобязательно null Имя настроенного транспорта или экземпляр транспорта.
Возвращает
Cake\Mailer\AbstractTransport|Cake\Mailer\Email$this
Исключения
LogicExceptionКогда выбранный транспорт не имеет метода отправки.
InvalidArgumentException
Когда $name не является строкой или объектом.
unserialize()source public
unserialize( string $data )
Десериализует объект Email.
Параметры
- string
$data - Сериализованная строка.
Возвращает
Cake\Mailer\EmailНастроенный экземпляр электронной почты.
Реализация
Serializable::unserialize() viewRender()source public
viewRender( string|null $viewClass null )
Класс представления для рендеринга
Параметры
- string|null
$viewClassнеобязательно null - Имя класса представления.
Возвращает
string|Cake\Mailer\Email$this
viewVars()source public
viewVars( array|null $viewVars null )
Переменные, которые должны быть установлены при рендеринге
Параметры
- array|null
$viewVarsнеобязательно null - Переменные для установки для представления.
Возвращает
array|Cake\Mailer\Email$this
Методы, используемые из Cake\Core\StaticConfigTrait
config()source public static
config( string|array $key , array|null $config null )
Этот метод можно использовать для определения адаптеров конфигурации для приложения или чтения существующей конфигурации.
Чтобы изменить конфигурацию адаптера во время выполнения, сначала удалите адаптер, а затем переконфигурируйте его.
Адаптеры не будут созданы до тех пор, пока не будет выполнено первое действие.
Использование
Предполагая, что имя класса Cache поддерживаются следующие сценарии:
Чтение данных конфигурации обратно:
Cache::config('default'); Настройка движка кэша.
Cache::config('default', $settings); Ввод созданного адаптера:
Cache::config('default', $instance); Одновременная настройка нескольких адаптеров:
Cache::config($arrayOfConfig);
Параметры
- string|array
$key - Имя конфигурации или массив нескольких конфигураций.
- array|null
$configнеобязательно null - Массив пар имя => данные конфигурации для адаптера.
Возвращает
array|nullNull при добавлении конфигурации или массив данных конфигурации при чтении.
Исключения
BadMethodCallExceptionПри попытке изменить существующую конфигурацию.
configured()source public static
configured( )
Возвращает массив, содержащий настроенные конфигурации
Возвращает
arrayМассив конфигураций.
drop()source public static
drop( string $config )
Удаляет созданный адаптер.
Если вы хотите изменить существующую конфигурацию, необходимо удалить её, изменить конфигурацию и затем добавить её заново.
Если реализующие объекты поддерживают объект $_registry , настроенная конфигурация также будет выгружена из реестра.
Параметры
- string
$config - Существующая конфигурация, которую вы хотите удалить.
Возвращает
booleanРезультат удаления, возвращает false, если конфигурация не существует.
dsnClassMap()source public static
dsnClassMap( array $map null )
Возвращает или обновляет карту классов DSN для данного класса
Параметры
- массив
$mapнеобязательно null - Добавления/изменения в карту классов для применения
Возвращает
массивparseDsn()source public static
parseDsn( string $dsn )
Парсит DSN в корректную конфигурацию подключения
Этот метод позволяет задать DSN, используя формат, аналогичный используемому в PEAR::DB. Ниже приведен пример его использования:
$dsn = 'mysql://user:pass@localhost/database?'; $config = ConnectionManager::parseDsn($dsn); $dsn = 'Cake\Log\Engine\FileLog://?types=notice,info,debug&file=debug&path=LOGS'; $config = Log::parseDsn($dsn); $dsn = 'smtp://user:secret@localhost:25?timeout=30&client=null&tls=null'; $config = Email::parseDsn($dsn); $dsn = 'file:///?className=\My\Cache\Engine\FileEngine'; $config = Cache::parseDsn($dsn); $dsn = 'File://?prefix=myapp_cake_core_&serialize=true&duration=+2 minutes&path=/tmp/persistent/'; $config = Cache::parseDsn($dsn);
Для всех классов значение scheme устанавливается как значение обоих className, если не указано иное.
Обратите внимание, что аргументы строки запроса также анализируются и устанавливаются как значения в возвращаемой конфигурации.
Параметры
- строка
$dsn - Строка DSN для преобразования в массив конфигурации
Возвращает
массивМассив конфигурации для хранения после анализа DSN
Исключения
InvalidArgumentExceptionЕсли передано не строка
Методы, используемые из Cake\View\ViewVarsTrait
createView()source public
createView( string|null $viewClass null )
Создает экземпляр класса представления на основе текущей конфигурации.
Параметры
- строка|null
$viewClassнеобязательно null - Необязательное полное имя класса представления для создания экземпляра.
Возвращает
Cake\View\ViewИсключения
Cake\View\Exception\MissingViewExceptionЕсли класс представления не найден.
set()source public
set( string|array $name , mixed $value null )
Сохраняет переменную или ассоциативный массив переменных для использования внутри шаблона.
Параметры
- строка|массив
$name - Строка или массив данных.
- смешанный
$valueнеобязательно null Значение, если $name является строкой (в этом случае работает как ключ). Не используется, если $name является ассоциативным массивом, в противном случае служит значениями для ключей $name.
Возвращает
$this
viewBuilder()source public
viewBuilder( )
Получить используемый билдер представления.
Возвращает
Cake\View\ViewBuilderviewOptions()source public
viewOptions( string|array|null $options null , boolean $merge true )
Получить/установить допустимые параметры представления в свойстве объекта _validViewOptions. Свойство создается как пустой массив, если оно не установлено. Если вызывается без параметров, возвращает текущий список допустимых параметров представления. См. createView().
Параметры
- строка|массив|null
$optionsнеобязательно null - Строка или массив строк для добавления в _validViewOptions.
- boolean
$mergeнеобязательно true Флаг слияния с существующими допустимыми параметрами представления или их перезаписи. По умолчанию
true.
Возвращает
массивОбновленные параметры представления в виде массива.
Подробности свойств
$_appCharsetsource
protected строка
Кодировка символов приложения, используемая для кодирования заголовков и тела
null
$_attachmentssource
protected массив
Список файлов, которые должны быть прикреплены к электронному сообщению.
Только абсолютные пути
[]
$_bccsource
protected массив
Скрытая копия
Список адресов электронной почты, которые должны получить копию сообщения. Получатель НЕ увидит этот список
[]
$_boundarysource
protected строка
Если установлено, разделитель для многочастотных MIME-сообщений
null
$_ccsource
protected массив
Копия
Список адресов электронной почты, которые должны получить копию сообщения. Получатель УВИДИТ этот список
[]
$_contentTypeCharsetsource
protected массив
Определение имени кодировки символов Content-Type
[
'ISO-2022-JP-MS' => 'ISO-2022-JP'
] $_domainsource
protected строка
Домен для генерации messageId. Необходимо установить вручную для рассылки из командной строки, так как env('HTTP_HOST') пуст
null
$_dsnClassMapsource
protected static массив
Массив, сопоставляющий схемы URL с полными именами классов транспорта
[
'debug' => 'Cake\Mailer\Transport\DebugTransport',
'mail' => 'Cake\Mailer\Transport\MailTransport',
'smtp' => 'Cake\Mailer\Transport\SmtpTransport',
] $_emailFormatsource
protected строка
В каком формате должно быть отправлено сообщение электронной почты
'text'
$_emailFormatAvailablesource
protected массив
Доступные форматы для отправки.
['text', 'html', 'both']
$_emailPatternsource
protected строка
Регулярное выражение для проверки адреса электронной почты
Если null, будет использоваться filter_var(). Используйте метод emailPattern() для установки пользовательского шаблона.
self::EMAIL_PATTERN
$_headerssource
protected массив
Ассоциативный массив пользовательских заголовков. Ключи будут префикс 'X-' согласно RFC2822 Раздел 4.7.5
[]
$_profilesource
protected array
Копия профиля конфигурации для этого экземпляра. Эту копию можно изменить с помощью Email::profile().
[]
$_returnPathsource
protected array
Адрес электронной почты, который будет использоваться в случае ошибок, таких как: — удаленный почтовый сервер недоступен — удаленный пользователь превысил свой лимит — неизвестный пользователь
[]
$_transportsource
protected Cake\Mailer\AbstractTransport
Экземпляр транспорта для отправки почты.
null
$headerCharsetsource
public string
Кодировка заголовков письма. Если null, используется свойство $charset
null
© 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.3/class-Cake.Mailer.Email.html