Класс SmtpTransport
Отправка почты по протоколу SMTP
- Cake\Mailer\AbstractTransport использует Cake\Core\InstanceConfigTrait
-
Cake\Mailer\Transport\SmtpTransport
Краткое описание свойств
-
$_contentprotectedСодержимое почты для возвратаarray -
$_defaultConfigprotectedКонфигурация по умолчанию для этого классаarray -
$_lastResponseprotectedОтвет последней отправленной команды SMTP.array - Сокет к SMTP-серверу
$_socketprotected
Унаследованные свойства
Краткое описание методов
- __destruct() publicДеструктор
- __wakeup() publicОбработчик десериализации.
- _auth() protectedОтправка аутентификации
- _bufferResponseLines() protectedРазбирает и сохраняет строки ответа в формате
'code' => 'message'. - _connect() protectedПодключение к SMTP-серверу
- _disconnect() protectedОтключение
- _generateSocket() protectedВспомогательный метод для создания сокета
- _prepareFromAddress() protectedПодготавливает адрес электронной почты
from. - _prepareFromCmd() protectedПодготавливает команду SMTP
MAIL FROM. - _prepareMessage() protectedПодготавливает тело сообщения.
- _prepareMessageHeaders() protectedПодготавливает заголовки сообщения.
- _prepareRcptCmd() protectedПодготавливает команду SMTP
RCPT TO. - _prepareRecipientAddresses() protectedПодготавливает адреса электронной почты получателей.
- _sendData() protectedОтправка данных
- _sendRcpt() protectedОтправка писем
- _smtpSend() protectedЗащищённый метод для отправки данных на SMTP-соединение
- connect() publicПодключение к SMTP-серверу.
- connected() publicПроверка наличия открытого соединения с SMTP-сервером.
- disconnect() publicОтключение от SMTP-сервера.
- getLastResponse() publicВозвращает ответ последней отправленной команды SMTP.
- send() publicОтправка почты
Подробное описание методов
__destruct()source public
__destruct( )
Деструктор
Пытается отключиться, чтобы убедиться, что соединение завершается должным образом перед закрытием сокета.
__wakeup()source public
__wakeup( )
Обработчик десериализации.
Убедитесь, что свойство сокета не инициализируется в нерабочем состоянии.
_auth()source protected
_auth( )
Отправка аутентификации
Исключения
Cake\Network\Exception\SocketException_bufferResponseLines()source protected
_bufferResponseLines( array $responseLines )
Разбирает и сохраняет строки ответа в формате 'code' => 'message'.
Параметры
- массив
$responseLines - Строки ответа для разбора.
_connect()source protected
_connect( )
Подключение к SMTP-серверу
Исключения
Cake\Network\Exception\SocketException_disconnect()source protected
_disconnect( )
Отключение
Исключения
Cake\Network\Exception\SocketException_generateSocket()source protected
_generateSocket( )
Вспомогательный метод для создания сокета
Исключения
Cake\Network\Exception\SocketException_prepareFromAddress()source protected
_prepareFromAddress( Cake\Mailer\Email $email )
Подготавливает адрес электронной почты отправителя.
Параметры
-
Cake\Mailer\Email$email - Экземпляр электронной почты
Возвращает
массив_prepareFromCmd()source protected
_prepareFromCmd( string $email )
Подготавливает команду SMTP.
Параметры
- строка
$email - Адрес электронной почты для отправки с командой.
Возвращает
строка_prepareMessage()source protected
_prepareMessage( Cake\Mailer\Email $email )
Подготавливает тело сообщения.
Параметры
-
Cake\Mailer\Email$email - Экземпляр электронной почты
Возвращает
строка_prepareMessageHeaders()source protected
_prepareMessageHeaders( Cake\Mailer\Email $email )
Подготавливает заголовки сообщения.
Параметры
-
Cake\Mailer\Email$email - Экземпляр электронной почты
Возвращает
массив_prepareRcptCmd()source protected
_prepareRcptCmd( string $email )
Подготавливает команду SMTP.
Параметры
- строка
$email - Адрес электронной почты для отправки с командой.
Возвращает
строка_prepareRecipientAddresses()source protected
_prepareRecipientAddresses( Cake\Mailer\Email $email )
Подготавливает адреса электронной почты получателей.
Параметры
-
Cake\Mailer\Email$email - Экземпляр Email
Возвращает
массив_sendData()source protected
_sendData( Cake\Mailer\Email $email )
Отправка данных
Параметры
-
Cake\Mailer\Email$email - Экземпляр Email
Использует
Cake\Network\Exception\SocketException_sendRcpt()source protected
_sendRcpt( Cake\Mailer\Email $email )
Отправка писем
Параметры
-
Cake\Mailer\Email$email - Cake Email
Использует
Cake\Network\Exception\SocketException_smtpSend()source protected
_smtpSend( string|null $data , string|boolean $checkCode = '250' )
Защищенный метод для отправки данных по SMTP-соединению
Параметры
- string|null
$data - Данные, которые будут отправлены на SMTP-сервер
- string|boolean
$checkCodeoptional '250' - Код для проверки в ответ сервера, false - пропускать проверку
Возвращает
string|nullСоответствующий код или null, если ничего не найдено
Использует
Cake\Network\Exception\SocketExceptionconnect()source public
connect( )
Подключение к SMTP-серверу.
Этот метод пытается подключиться только в том случае, если открытое соединение еще не существует.
connected()source public
connected( )
Проверка наличия открытого подключения к SMTP-серверу.
Возвращает
booleandisconnect()source public
disconnect( )
Отключение от SMTP-сервера.
Этот метод пытается отключиться только в том случае, если открытое соединение существует.
getLastResponse()source public
getLastResponse( )
Возвращает ответ от последней отправленной SMTP-команды.
Ответ состоит из одной или нескольких строк, содержащих код ответа и необязательный текст сообщения ответа:
[
[
'code' => '250',
'message' => 'mail.example.com'
],
[
'code' => '250',
'message' => 'PIPELINING'
],
[
'code' => '250',
'message' => '8BITMIME'
],
// etc...
] Возвращает
массивsend()source public
send( Cake\Mailer\Email $email )
Отправка почты
Параметры
-
Cake\Mailer\Email$email - Экземпляр Email
Возвращает
массивИспользует
Cake\Network\Exception\SocketExceptionМетоды, унаследованные от Cake\Mailer\AbstractTransport
__construct()source public
__construct( array $config = [] )
Конструктор
Параметры
- массив
$configoptional [] - Параметры конфигурации.
_headersToString()source protected
_headersToString( array $headers , string $eol = "\r\n" )
Помощь в преобразовании заголовков в строку
Параметры
- массив
$headers - Заголовки в формате ключ => значение
- строка
$eoloptional "\r\n" - Строка конца строки.
Возвращает
строкаМетоды, используемые из Cake\Core\InstanceConfigTrait
_configDelete()source protected
_configDelete( string $key )
Удаляет один ключ конфигурации.
Параметры
- строка
$key - Ключ для удаления.
Использует
Cake\Core\Exception\Exceptionесли происходит попытка перезаписи существующей конфигурации
_configRead()source protected
_configRead( string|null $key )
Читает ключ конфигурации.
Параметры
- string|null
$key - Ключ для чтения.
Возвращает
смешанное_configWrite()source protected
_configWrite( string|array $key , mixed $value , boolean|string $merge = false )
Записывает ключ конфигурации.
Параметры
- string|array
$key - Ключ для записи.
- смешанное
$value - Значение для записи.
- boolean|string
$mergeoptional false True для рекурсивного слияния, 'shallow' для простого слияния, false для перезаписи, по умолчанию false.
Использует
Cake\Core\Exception\Exceptionесли происходит попытка перезаписи существующей конфигурации
config()source public deprecated
config( string|array|null $key = null , mixed|null $value = null , boolean $merge = true )
Получает/устанавливает конфигурацию.
Использование
Чтение всей конфигурации:
$this->config();
Чтение определенного значения:
$this->config('key'); Чтение вложенного значения:
$this->config('some.nested.key'); Установка определенного значения:
$this->config('key', $value); Установка вложенного значения:
$this->config('some.nested.key', $value); Обновление нескольких настроек конфигурации одновременно:
$this->config(['one' => 'value', 'another' => 'value']);
Устаревшее
3.4.0 используйте setConfig()/getConfig() вместо.Параметры
- string|array|null
$keyoptional null - Ключ для получения/установки или полный массив конфигураций.
- mixed|null
$valueoptional null - Значение для установки.
- boolean
$mergeoptional true - Выполнять рекурсивное слияние или перезаписывать существующую конфигурацию, по умолчанию true.
Возвращает
смешанноеПрочитанное значение конфигурации или сам объект при операциях записи.
Использует
Cake\Core\Exception\Exceptionпри попытке установить недействительный ключ.
configShallow()source public
configShallow( string|array $key , mixed|null $value = null )
Объединяет предоставленную конфигурацию с существующей. В отличие от config(), которая выполняет рекурсивное слияние для вложенных ключей, этот метод выполняет простое слияние.
Установка определенного значения:
$this->configShallow('key', $value); Установка вложенного значения:
$this->configShallow('some.nested.key', $value); Обновление нескольких настроек конфигурации одновременно:
$this->configShallow(['one' => 'value', 'another' => 'value']);
Параметры
- string|array
$key - Ключ для установки или полный массив конфигураций.
- mixed|null
$valueoptional null - Значение для установки.
Возвращает
$this
getConfig()source public
getConfig( string|null $key = null , mixed $default = null )
Возвращает конфигурацию.
Использование
Чтение всей конфигурации:
$this->getConfig();
Чтение определенного значения:
$this->getConfig('key'); Чтение вложенного значения:
$this->getConfig('some.nested.key'); Чтение со значением по умолчанию:
$this->getConfig('some-key', 'default-value'); Параметры
- string|null
$keyoptional null - Ключ для получения или null для всей конфигурации.
- mixed
$defaultoptional null - Возвращаемое значение, если ключ не существует.
Возвращает
смешанноеДанные конфигурации по указанному ключу или null, если ключ не существует.
setConfig()source public
setConfig( string|array $key , mixed|null $value = null , boolean $merge = true )
Устанавливает конфигурацию.
Использование
Установка определённого значения:
$this->setConfig('key', $value); Установка вложенного значения:
$this->setConfig('some.nested.key', $value); Обновление нескольких настроек конфигурации одновременно:
$this->setConfig(['one' => 'value', 'another' => 'value']);
Параметры
- строка|массив
$key - Ключ для установки или полный массив конфигураций.
- смешанный|null
$valueнеобязательно null - Значение для установки.
- boolean
$mergeнеобязательно true - Выполнять рекурсивное слияние или перезапись существующей конфигурации, по умолчанию true.
Возвращаемое значение
$this
Исключения
Cake\Core\Exception\ExceptionПри попытке установить недопустимый ключ.
Подробное описание свойств
$_defaultConfigsource
protected массив
Настройки по умолчанию для данного класса
[
'host' => 'localhost',
'port' => 25,
'timeout' => 30,
'username' => null,
'password' => null,
'client' => null,
'tls' => false,
'keepAlive' => false
]
© 2005–present The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/3.8/class-Cake.Mailer.Transport.SmtpTransport.html