Класс 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. Необходимо установить вручную для отправки по CLI, так как 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 при клонировании объекта email.
- __construct() publicКонструктор
- _addEmail() protectedДобавление email
- _applyConfig() protectedПрименение конфигурации к экземпляру
- _attachFiles() protectedПрикрепление файлов, не встроенных в сообщение, путём добавления содержимого файла внутри границ.
- _attachInlineFiles() protectedПрикрепление встроенных файлов к сообщению.
- _checkViewVars() protectedИтерация по хэшу для очистки и нормализации.
- _constructTransport() protectedСоздание экземпляра транспорта из данных конфигурации.
- _createBoundary() 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Установка email
- _setEmailSingle() protectedУстановка только 1 email
- _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Формат email
- emailPattern() publicУстановка/получение шаблона email
- from() publicОтправитель
- getHeaders() publicПолучение списка заголовков
- headerCharset() publicУстановка/получение кодировки заголовков
- helpers() publicПомощники для использования в отображении
- jsonSerialize() public
Сериализация объекта email в значение, которое может быть напрямую сериализовано и повторно использовано для клонирования этого экземпляра email.
- message() publicПолучение сгенерированного сообщения (используется классами транспорта).
- messageId() publicMessage-ID
- profile() publicПолучение/установка профиля конфигурации для данного экземпляра.
- readReceipt() publicПодтверждение чтения (заголовок Disposition-Notification-To)
- replyTo() publicReply-To
- 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Переменные для установки при отображении
Детали метода
__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При отсутствии или некорректной конфигурации транспортного средства.
_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 )
Чтение содержимого файла и возвращение его в формате base64.
Параметры
- 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 адрес электронной почты
Параметры
- строка
$varName - Имя свойства
- строка|массив
$email Строка с адресом электронной почты, Массив с адресом электронной почты в качестве ключа, именем в качестве значения или адресом электронной почты в качестве значения (без имени)
- строка
$name - Имя
- строка
$throwMessage - Сообщение об ошибке
Возвращаемое значение
$this
Исключения
InvalidArgumentException_validateEmail()source protected
_validateEmail( string $email )
Проверить адрес электронной почты
Параметры
- строка
$email - Адрес электронной почты для проверки
Исключения
InvalidArgumentExceptionЕсли адрес электронной почты не соответствует формату
_wrap()source protected
_wrap( string $message , integer $wrapLength Email::LINE_LENGTH_MUST )
Оборачивание сообщения в соответствии с RFC 2822 - 2.1.1
Параметры
- строка
$message - Сообщение для обёртывания
- целое число
$wrapLengthнеобязательно Email::LINE_LENGTH_MUST - Длина строки
Возвращаемое значение
массивОборачиваемое сообщение
addAttachments()source public
addAttachments( string|array $attachments )
Добавить вложения
Параметры
- строка|массив
$attachments - Строка с именем файла или массив с именами файлов
Возвращаемое значение
$this
Исключения
InvalidArgumentExceptionСм. также
\Cake\Mailer\Email::attachments()addBcc()source public
addBcc( string|array $email , string|null $name null )
Добавить Bcc
Параметры
- строка|массив
$email Null для получения, Строка с адресом электронной почты, Массив с адресом электронной почты в качестве ключа, именем в качестве значения или адресом электронной почты в качестве значения (без имени)
- строка|null
$nameнеобязательно null - Имя
Возвращаемое значение
$this
addCc()source public
addCc( string|array $email , string|null $name null )
Добавить Cc
Параметры
- строка|массив
$email Null для получения, Строка с адресом электронной почты, Массив с адресом электронной почты в качестве ключа, именем в качестве значения или адресом электронной почты в качестве значения (без имени)
- строка|null
$nameнеобязательно null - Имя
Возвращаемое значение
$this
addHeaders()source public
addHeaders( array $headers )
Добавить заголовок для сообщения
Параметры
- массив
$headers - Заголовки для установки.
Возвращаемое значение
$this
addTo()source public
addTo( string|array $email , string|null $name null )
Добавить получателя
Параметры
- строка|массив
$email Null для получения, Строка с адресом электронной почты, Массив с адресом электронной почты в качестве ключа, именем в качестве значения или адресом электронной почты в качестве значения (без имени)
- строка|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.
Параметры
- строка|массив|null
$attachmentsнеобязательно null - Строка с именем файла или массив с именами файлов
Возвращаемое значение
массив|Cake\Mailer\Email$this Либо массив вложений при получении, либо $this при установке.
Исключения
InvalidArgumentExceptionbcc()source public
bcc( string|array|null $email null , string|null $name null )
Bcc
Параметры
- строка|массив|null
$emailнеобязательно null Null для получения, Строка с адресом электронной почты, Массив с адресом электронной почты в качестве ключа, именем в качестве значения или адресом электронной почты в качестве значения (без имени)
- строка|null
$nameнеобязательно null - Имя
Возвращаемое значение
массив|Cake\Mailer\Email$this
cc()source public
cc( string|array|null $email null , string|null $name null )
Cc
Параметры
- строка|массив|null
$emailнеобязательно null Null для получения, Строка с адресом электронной почты, Массив с адресом электронной почты в качестве ключа, именем в качестве значения или адресом электронной почты в качестве значения (без имени)
- строка|null
$nameнеобязательно null - Имя
Возвращаемое значение
массив|Cake\Mailer\Email$this
charset()source public
charset( string|null $charset null )
Установщик/получатель кодировки символов
Параметры
- строка|null
$charsetнеобязательно null - Кодировка символов.
Возвращаемое значение
строкаthis->charset
configTransport()source public static
configTransport( string|array $key , array|Cake\Mailer\AbstractTransport|null $config null )
Добавление или чтение конфигурации транспорта.
Используйте этот метод для определения транспортов, которые будут использоваться в профилях доставки. После определения их нельзя изменить, и необходимо использовать Email::dropTransport() для сброса конфигурации.
При использовании массива данных конфигурации для каждого отправляемого сообщения будет создан новый транспорт. При использовании замыкания замыкание будет вычисляться для каждого сообщения.
Ключ className используется для определения класса, который следует использовать для транспорта. Это может быть короткое имя или полное имя класса.
Параметры
- строка|массив
$key Имя конфигурации для чтения/записи. Или массив нескольких транспортов для установки.
- массив|
Cake\Mailer\AbstractTransport|null$configнеобязательно null Либо массив данных конфигурации, либо экземпляр транспорта.
Возвращаемое значение
массив|nullЛибо null при установке, либо массив данных при чтении.
Исключения
BadMethodCallExceptionПри модификации существующей конфигурации.
configuredTransport()source public static
configuredTransport( )
Возвращает массив, содержащий конфигурации именованных транспортов
Возвращаемое значение
массивМассив конфигураций.
createFromArray()source public
createFromArray( array $config )
Настраивает объект экземпляра электронного письма из сериализованной конфигурации.
Параметры
- массив
$config - Массив конфигурации электронной почты.
Возвращаемое значение
Cake\Mailer\EmailНастроенный экземпляр электронного письма.
deliver()source public static
deliver( string|array|null $to null , string|null $subject null , string|array|null $message null , string|array $transportConfig 'fast' , 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необязательный 'fast' - Строка для использования конфигурации из 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необязательный [] - Список заголовков.
Возвращает
arrayheaderCharset()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 )
Message-ID
Параметры
- boolean|string|null
$messageнеобязательный null - True для генерации нового Message-ID, False для игнорирования (не отправлять в электронном письме), Строка для установки 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 )
Reply-To
Параметры
- 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 для этого класса.
Параметры
- array
$mapнеобязательный null - Добавления/изменения в карту классов для применения
Возвращаемое значение
arrayparseDsn()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, если не указано иное.
Обратите внимание, что аргументы запроса также анализируются и устанавливаются как значения в возвращаемой конфигурации.
Параметры
- string
$dsn - Строка DSN для преобразования в массив конфигурации
Возвращаемое значение
arrayМассив конфигурации для хранения после разбора DSN
Исключения
InvalidArgumentExceptionЕсли в качестве параметра не передана строка
Методы, используемые из Cake\View\ViewVarsTrait
createView()source public
createView( string|null $viewClass null )
Создаёт экземпляр класса представления на основе текущей конфигурации.
Параметры
- string|null
$viewClassнеобязательный null - Необязательное имя пространственно-разделенного класса представления для создания экземпляра.
Возвращаемое значение
Cake\View\ViewИсключения
Cake\View\Exception\MissingViewExceptionЕсли класс представления не найден.
set()source public
set( string|array $name , string|array|null|boolean $value null )
Сохраняет переменную или ассоциативный массив переменных для использования внутри шаблона.
Параметры
- string|array
$name - Строка или массив данных.
- string|array|null|boolean
$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().
Параметры
- string|array|null
$optionsнеобязательный null - строка или массив строк, которые будут добавлены к _validViewOptions.
- boolean
$mergeнеобязательный true Присоединить или перезаписать существующие допустимые опции представления. По умолчанию
true.
Возвращаемое значение
arrayОбновлённые опции представления в виде массива.
Подробности свойств
$_appCharsetsource
protected string
Применяемый во всем приложении набор символов, используемый для кодирования заголовков и тела
null
$_attachmentssource
protected array
Список файлов, которые должны быть прикреплены к электронной почте.
Только абсолютные пути
[]
$_bccsource
protected array
Скрытая копия
Список адресов электронной почты, которые должны получить копию сообщения. Получатель НЕ сможет увидеть этот список
[]
$_boundarysource
protected string
Если установлено, граница для использования в сообщениях multipart mime
null
$_ccsource
protected array
Копия
Список адресов электронной почты, которые должны получить копию сообщения. Получатель сможет увидеть этот список
[]
$_contentTypeCharsetsource
protected array
Определение имени набора символов Content-Type
[
'ISO-2022-JP-MS' => 'ISO-2022-JP'
] $_domainsource
protected string
Домен для генерации messageId. Нужно вручную устанавливать для отправки по командной строке, так как env('HTTP_HOST') пустой
null
$_dsnClassMapsource
protected static array
Массив, сопоставляющий схемы URL с полными именами классов Транспорта
[
'debug' => 'Cake\Mailer\Transport\DebugTransport',
'mail' => 'Cake\Mailer\Transport\MailTransport',
'smtp' => 'Cake\Mailer\Transport\SmtpTransport',
] $_emailFormatsource
protected string
В каком формате должно быть отправлено сообщение электронной почты
'text'
$_emailPatternsource
protected string
Регулярное выражение для проверки электронного адреса
Если null, будет использоваться filter_var(). Используйте метод emailPattern(), чтобы задать пользовательское выражение.
self::EMAIL_PATTERN
$_headerssource
protected array
Ассоциативный массив пользовательских заголовков. Ключи будут иметь префикс '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–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.Email.html