Класс CakeEmail
Класс CakePHP для отправки электронных писем.
Этот класс используется для обработки электронных сообщений в формате Internet Message Format, согласно стандарту, описанному в http://www.rfc-editor.org/rfc/rfc2822.txt
Авторские права: Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
Лицензия: MIT License
Расположение Cake/Network/Email/CakeEmail.php
Подробное описание методов
__constructsource public
__construct( array|string $config null )
Конструктор
Параметры
- array|string
$configнеобязательно null - Массив конфигураций или строка для загрузки конфигураций из email.php
_addEmailsource protected
_addEmail( string $varName , string|array $email , string $name )
Добавление адресата
Параметры
- string
$varName - Имя свойства
- string|array
$email - Строка с адресом электронной почты, массив с адресом электронной почты в качестве ключа, именем в качестве значения или адресом электронной почты в качестве значения (без имени)
- string
$name - Имя
Возвращает
selfself
Вызывает исключение
SocketExceptionSocketException
_applyConfigsource protected
_applyConfig( array $config )
Применение конфигурации к экземпляру
Параметры
- array
$config - Параметры конфигурации.
Вызывает исключение
ConfigureExceptionПри ошибке поиска или отсутствии указанной конфигурации в файле конфигурации.
_attachFilessource protected
_attachFiles( string $boundary null )
Прикрепление файлов, не являющихся встраиваемыми, путем добавления содержимого файла внутри границ.
Параметры
- string
$boundaryнеобязательно null - Граница для использования. Если null, будет использоваться по умолчанию $this->_boundary
Возвращает
arrayМассив строк для добавления в сообщение
_attachInlineFilessource protected
_attachInlineFiles( string $boundary null )
Прикрепление встроенных файлов к сообщению.
Параметры
- string
$boundaryнеобязательно null - Граница для использования. Если null, будет использоваться по умолчанию $this->_boundary
Возвращает
arrayМассив строк для добавления в сообщение
_encodesource protected
_encode( string $text )
Кодирование заданной строки с использованием текущего набора символов
Параметры
- string
$text - Строка для кодирования
Возвращает
stringЗакодированная строка
_encodeStringsource protected
_encodeString( string $text , string $charset )
Перевод строки из одного набора символов в другой, если значение App.encoding отличается и функция mb_convert_encoding существует
Параметры
- string
$text - Текст, который нужно преобразовать
- string
$charset - Целевой набор символов
Возвращает
stringстрока
_formatAddresssource protected
_formatAddress( array $address )
Форматирование адресов
Если адрес содержит символы, не являющиеся буквенно-цифровыми или пробельными, он будет заключен в кавычки, так как символы, такие как : и ,, известны как вызывающие проблемы в полях заголовка адресов.
Параметры
- array
$address - Адреса для форматирования.
Возвращает
arrayмассив
_getContentTransferEncodingsource protected
_getContentTransferEncoding( )
Возвращение значения Content-Transfer Encoding, основанного на заданном наборе символов
Возвращает
stringстрока
_getContentTypeCharsetsource protected
_getContentTypeCharset( )
Возврат значения набора символов для Content-Type.
Проверка типов fallback/совместимости, которые включают обходные пути для устаревших японских наборов символов.
Возвращает
stringстрока
_getTypessource protected
_getTypes( )
Получение типов текстовых тел, присутствующих в данном электронном сообщении
Возвращает
arrayМассив типов. Допустимые типы — 'text' и 'html'
_readFilesource protected
_readFile( string $path )
Чтение содержимого файла и возврат версии содержимого файла в base64.
Параметры
- string
$path - Абсолютный путь к файлу для чтения.
Возвращает
stringСодержимое файла в кодировке base64
_rendersource protected
_render( array $content )
Рендеринг тела электронного письма.
Параметры
- array
$content - Содержимое для рендеринга
Возвращает
arrayТело электронного письма, готовое к отправке
_renderTemplatessource protected
_renderTemplates( string $content )
Создание и установка всех свойств представления, необходимых для рендеринга шаблонизированных электронных писем. Если шаблон не задан, $content будет возвращён в виде хеша типов текстового содержимого для электронного письма.
Параметры
- string
$content - Содержимое, переданное из send() в большинстве случаев.
Возвращает
arrayОтрендеренное содержимое с ключами html и text.
_setEmailsource protected
_setEmail( string $varName , string|array $email , string $name )
Установить адрес электронной почты
Параметры
- string
$varName - Имя свойства
- string|array
$email - Строка с адресом электронной почты, массив с адресом электронной почты в качестве ключа, именем в качестве значения или адресом электронной почты в качестве значения (без имени)
- string
$name - Имя
Возвращает
selfself
_setEmailSinglesource protected
_setEmailSingle( string $varName , string|array $email , string $name , string $throwMessage )
Установить только 1 адрес электронной почты
Параметры
- string
$varName - Имя свойства
- string|array
$email - Строка с адресом электронной почты, массив с адресом электронной почты в качестве ключа, именем в качестве значения или адресом электронной почты в качестве значения (без имени)
- string
$name - Имя
- string
$throwMessage - Сообщение об ошибке
Возвращает
selfself
Вызывает исключение
SocketExceptionSocketException
_validateEmailsource protected
_validateEmail( string $email )
Проверка адреса электронной почты
Параметры
- string
$email - Электронная почта
Вызывает исключение
SocketExceptionЕсли адрес электронной почты не соответствует формату
_wrapsource protected
_wrap( string $message , integer $wrapLength CakeEmail::LINE_LENGTH_MUST )
Обернуть сообщение в соответствии с RFC 2822 - 2.1.1
Параметры
- строка
$message - Сообщение для обёртывания
- целое число
$wrapLengthнеобязательноCakeEmail::LINE_LENGTH_MUST - Длина строки
Возвращаемое значение
arrayОбёрнутое сообщение
addAttachmentssource public
addAttachments( string|array $attachments )
Добавить вложения
Параметры
- строка|массив
$attachments - Строка с именем файла или массив с именами файлов
Возвращаемое значение
selfself
Исключения
SocketExceptionSocketException
См. также
CakeEmail::attachments()addBccsource public
addBcc( string|array $email , string $name null )
Добавить Bcc
Параметры
- строка|массив
$email - Null для получения, Строка с адресом электронной почты, Массив с адресом электронной почты в качестве ключа, именем в качестве значения или адресом электронной почты в качестве значения (без имени)
- строка
$nameнеобязательно null - Имя
Возвращаемое значение
selfself
addCcsource public
addCc( string|array $email , string $name null )
Добавить Cc
Параметры
- строка|массив
$email - Null для получения, Строка с адресом электронной почты, Массив с адресом электронной почты в качестве ключа, именем в качестве значения или адресом электронной почты в качестве значения (без имени)
- строка
$nameнеобязательно null - Имя
Возвращаемое значение
selfself
addHeaderssource public
addHeaders( array $headers )
Добавить заголовок для сообщения
Параметры
- массив
$headers - Заголовки для установки.
Возвращаемое значение
selfself
Исключения
SocketExceptionSocketException
addTosource public
addTo( string|array $email , string $name null )
Добавить получателей
Параметры
- строка|массив
$email - Null для получения, Строка с адресом электронной почты, Массив с адресом электронной почты в качестве ключа, именем в качестве значения или адресом электронной почты в качестве значения (без имени)
- строка
$nameнеобязательно null - Имя
Возвращаемое значение
selfself
attachmentssource public
attachments( string|array $attachments null )
Добавить вложения к сообщению электронной почты
Вложения могут быть определены несколькими способами в зависимости от требуемого уровня контроля:
Прикрепить один файл:
$email->attachments('path/to/file');
Прикрепить файл с другим именем файла:
$email->attachments(array('custom_name.txt' => 'path/to/file.txt'));
Прикрепить файл и указать дополнительные свойства:
$email->attachments(array('custom_name.png' => array( 'file' => 'path/to/file', 'mimetype' => 'image/png', 'contentId' => 'abc123', 'contentDisposition' => false ));
Прикрепить файл из строки и указать дополнительные свойства:
$email->attachments(array('custom_name.png' => array( 'data' => file_get_contents('path/to/file'), 'mimetype' => 'image/png' ));
Ключ contentId позволяет указать встроенное вложение. В тексте электронного письма можно использовать <img src="cid:abc123" /> для отображения изображения в строке.
Ключ contentDisposition позволяет отключить заголовок Content-Disposition, это может улучшить совместимость вложений с клиентами электронной почты Outlook.
Параметры
- строка|массив
$attachmentsнеобязательно null - Строка с именем файла или массив с именами файлов
Возвращаемое значение
array|selfМассив вложений при получении или $this при установке.
Исключения
SocketExceptionSocketException
bccsource public
bcc( string|array $email null , string $name null )
Bcc
Параметры
- строка|массив
$emailнеобязательно null - Null для получения, Строка с адресом электронной почты, Массив с адресом электронной почты в качестве ключа, именем в качестве значения или адресом электронной почты в качестве значения (без имени)
- строка
$nameнеобязательно null - Имя
Возвращаемое значение
array|selfмассив|self
ccsource public
cc( string|array $email null , string $name null )
Cc
Параметры
- строка|массив
$emailнеобязательно null - Null для получения, Строка с адресом электронной почты, Массив с адресом электронной почты в качестве ключа, именем в качестве значения или адресом электронной почты в качестве значения (без имени)
- строка
$nameнеобязательно null - Имя
Возвращаемое значение
array|selfмассив|self
charsetsource public
charset( string $charset null )
Установка/получение кодировки символов
Параметры
- строка
$charsetнеобязательно null - Кодировка символов.
Возвращаемое значение
stringthis->charset
configsource public
config( string|array $config null )
Конфигурация для отправки электронной почты
Использование
Загрузка конфигурации из app/Config/email.php:
$email->config('default');
Объединение массива конфигураций в экземпляр:
$email->config(array('to' => 'bill@example.com'));
Параметры
- строка|массив
$configнеобязательно null - Название конфигурации (из email.php), массив с конфигурацией или null для возврата текущей конфигурации
Возвращаемое значение
string|array|selfстрока|массив|self
deliversource public static
deliver( string|array $to null , string $subject null , string|array $message null , string|array $transportConfig 'fast' , boolean $send true )
Статический метод для быстрого создания экземпляра CakeEmail
Параметры
- строка|массив
$toнеобязательно null - Адрес для отправки (см. CakeEmail::to()). Если null, попытается использовать 'to' из конфигурации транспорта
- строка
$subjectнеобязательно null - Строка темы или null для использования 'subject' из конфигурации транспорта
- строка|массив
$messageнеобязательно null - Строка сообщения или массив с переменными для использования в рендеринге
- строка|массив
$transportConfigнеобязательно 'fast' - Строка для использования конфигурации из EmailConfig или массив с конфигурациями
- булево
$sendнеобязательно true - Отправить электронное письмо или просто вернуть экземпляр, предварительно настроенный
Возвращаемое значение
selfЭкземпляр CakeEmail
Исключения
SocketExceptionSocketException
domainsource public
domain( string $domain null )
Домен верхнего уровня (часть после @)
Параметры
- строка
$domainнеобязательно null - Вручную задать домен для отправки почты через консоль
Возвращаемое значение
string|selfстрока|self
emailFormatsource public
emailFormat( string $format null )
Формат электронной почты
Параметры
- строка
$formatнеобязательно null - Форматирующая строка.
Возвращаемое значение
string|selfстрока|self
Исключения
SocketExceptionSocketException
emailPatternsource public
emailPattern( string|boolean|null $regex false )
Установка/получение emailPattern
Параметры
- строка|булево|null
$regexнеобязательно false - Шаблон для проверки адресов электронной почты, null для отмены шаблона и использования filter_var(), false или ничего для возврата текущего значения
Возвращаемое значение
string|selfстрока|self
отправительисходный код public
from( string|array $email null , string $name null )
Отправитель
Параметры
- строка|массив
$emailнеобязательно null - Null для получения, Строка с адресом электронной почты, Массив с адресом электронной почты в качестве ключа, именем в качестве значения или адресом электронной почты в качестве значения (без имени)
- строка
$nameнеобязательно null - Имя
Возвращает
array|CakeEmailмассив|CakeEmail
Исключения
SocketExceptionSocketException
getHeadersисходный код public
getHeaders( array $include array() )
Получить список заголовков
Включает:
fromreplyToreadReceiptreturnPathtoccbccsubject
Параметры
- массив
$includeнеобязательно array() - Список заголовков.
Возвращает
arrayмассив
headerCharsetисходный код public
headerCharset( string $charset null )
Установщик/получатель кодировки заголовков
Параметры
- строка
$charsetнеобязательно null - Кодировка символов.
Возвращает
stringthis->charset
helpersисходный код public
helpers( array $helpers null )
Вспомогательные модули для использования в рендеринге
Параметры
- массив
$helpersнеобязательно null - Список вспомогательных модулей.
Возвращает
array|selfмассив|self
сообщениеисходный код public
message( string $type null )
Получить сгенерированное сообщение (используется классами транспорта)
Параметры
- строка
$typeнеобязательно null - Использовать константы MESSAGE_* или null для возврата полного сообщения в виде массива
Возвращает
string|arrayСтрока, если есть тип, массив, если тип null
messageIdисходный код public
messageId( boolean|string $message null )
Идентификатор сообщения
Параметры
- boolean|строка
$messageнеобязательно null - True для генерации нового Message-ID, False для игнорирования (не отправлять в электронном письме), Строка для установки в качестве Message-ID
Возвращает
boolean|string|selfbool|строка|self
Исключения
SocketExceptionSocketException
readReceiptисходный код public
readReceipt( string|array $email null , string $name null )
Получение подтверждения о прочтении (заголовок Disposition-Notification-To)
Параметры
- строка|массив
$emailнеобязательно null - Null для получения, Строка с адресом электронной почты, Массив с адресом электронной почты в качестве ключа, именем в качестве значения или адресом электронной почты в качестве значения (без имени)
- строка
$nameнеобязательно null - Имя
Возвращает
array|CakeEmailмассив|CakeEmail
Исключения
SocketExceptionSocketException
replyToисходный код public
replyTo( string|array $email null , string $name null )
Ответ
Параметры
- строка|массив
$emailнеобязательно null - Null для получения, Строка с адресом электронной почты, Массив с адресом электронной почты в качестве ключа, именем в качестве значения или адресом электронной почты в качестве значения (без имени)
- строка
$nameнеобязательно null - Имя
Возвращает
array|CakeEmailмассив|CakeEmail
Исключения
SocketExceptionSocketException
сбросисходный код public
reset( )
Сбросить все внутренние переменные CakeEmail, чтобы можно было отправить новое электронное письмо.
Возвращает
selfself
адрес_возвратаисходный код public
returnPath( string|array $email null , string $name null )
Адрес возврата
Параметры
- строка|массив
$emailнеобязательно null - Null для получения, Строка с адресом электронной почты, Массив с адресом электронной почты в качестве ключа, именем в качестве значения или адресом электронной почты в качестве значения (без имени)
- строка
$nameнеобязательно null - Имя
Возвращает
array|CakeEmailмассив|CakeEmail
Исключения
SocketExceptionSocketException
отправитьисходный код public
send( string|array $content null )
Отправить электронное письмо с указанным содержимым, шаблоном и макетом
Параметры
- строка|массив
$contentнеобязательно null - Строка с сообщением или массив с сообщениями
Возвращает
arrayмассив
Исключения
SocketExceptionSocketException
отправительисходный код public
sender( string|array $email null , string $name null )
Отправитель
Параметры
- строка|массив
$emailнеобязательно null - Null для получения, Строка с адресом электронной почты, Массив с адресом электронной почты в качестве ключа, именем в качестве значения или адресом электронной почты в качестве значения (без имени)
- строка
$nameнеобязательно null - Имя
Возвращает
array|CakeEmailмассив|CakeEmail
Исключения
SocketExceptionSocketException
setHeadersисходный код public
setHeaders( array $headers )
Устанавливает заголовки для сообщения
Параметры
- массив
$headers - Ассоциативный массив, содержащий устанавливаемые заголовки.
Возвращает
selfself
Исключения
SocketExceptionSocketException
темаисходный код public
subject( string $subject null )
Получение/установка темы.
Параметры
- строка
$subjectнеобязательно null - Строка темы.
Возвращает
string|selfстрока|self
шаблонисходный код public
template( boolean|string $template false , boolean|string $layout false )
Шаблон и макет
Параметры
- boolean|строка
$templateнеобязательно false - Имя шаблона или null для его игнорирования
- boolean|строка
$layoutнеобязательно false - Имя макета или null для его игнорирования
Возвращает
array|selfмассив|self
темаисходный код public
theme( string $theme null )
Тема для использования при рендеринге
Параметры
- строка
$themeнеобязательно null - Имя темы.
Возвращает
string|selfстрока|self
tosource public
to( string|array $email null , string $name null )
Кому
Параметры
- строка|массив
$emailнеобязательно null - Null для получения, Строка с адресом электронной почты, Массив с адресом электронной почты в качестве ключа, именем в качестве значения или адресом электронной почты в качестве значения (без имени)
- строка
$nameнеобязательно null - Имя
Возвращает
array|selfмассив|self
transportsource public
transport( string $name null )
Имя транспорта
Параметры
- строка
$nameнеобязательно null - Имя транспорта.
Возвращает
string|selfстрока|self
transportClasssource public
transportClass( )
Возвращает класс транспорта
Возвращает
AbstractTransportAbstractTransport
Выбрасывает
SocketExceptionSocketException
viewRendersource public
viewRender( string $viewClass null )
Класс представления для рендеринга
Параметры
- строка
$viewClassнеобязательно null - Имя класса представления.
Возвращает
string|selfстрока|self
viewVarssource public
viewVars( array $viewVars null )
Переменные, которые должны быть установлены при рендеринге
Параметры
- массив
$viewVarsнеобязательно null - Переменные для установки для представления.
Возвращает
array|selfмассив|self
Краткое описание констант
string | EMAIL_CLIENT По умолчанию X-Mailer | 'CakePHP Email' |
string | EMAIL_PATTERN Содержит шаблон регулярных выражений для проверки адреса электронной почты | '/^((?:[\p{L}0-9.!#$%&\'*+\/=?^_`{|}~-]+)*@[\p{L}0-9-.]+)$/ui' |
integer | LINE_LENGTH_MUST Длина строки - должна быть меньше - RFC 2822 - 2.1.1 | 998 |
integer | LINE_LENGTH_SHOULD Длина строки - не должна быть больше - RFC 2822 - 2.1.1 | 78 |
string | MESSAGE_HTML Тип сообщения - HTML | 'html' |
string | MESSAGE_TEXT Тип сообщения - ТЕКСТ | 'text' |
Краткое описание свойств
© 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/2.7/class-CakeEmail.html