Spec-Zone.ru › CakePHP 2.9

Класс EmailComponent

EmailComponent

Этот компонент используется для обработки формата интернет-сообщений, основанного на стандарте, описанном в http://www.rfc-editor.org/rfc/rfc2822.txt

CakeObject
Extended by Component
Extended by EmailComponent
Пакет: Cake\Controller\Component
Ссылка: http://book.cakephp.org/2.0/ru/core-libraries/components/email.html
Ссылка: http://book.cakephp.org/2.0/ru/core-utility-libraries/email.html
Устаревшее: 3.0.0 Будет удалено в 3.0. Используйте Network/CakeEmail вместо этого
Авторские права: Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
Лицензия: MIT License
Расположение: Cake/Controller/Component/EmailComponent.php

Краткое описание свойств

  • $_controller protected
    Controller
    Ссылка на контроллер
  • $additionalParams public
    string
    Список дополнительных заголовков
  • $attachments public
    array
    Список файлов, которые должны быть прикреплены к электронному письму.
  • $bcc public
    array
    Скрытая копия
  • $cc public
    array
    Копия
  • $charset public
    string
    Кодировка, в которой отправляется электронное письмо
  • $date public
    string

    Дата, которая должна быть добавлена в заголовок Date. Она должна соответствовать стандарту RFC2822. Оставьте null, чтобы использовать текущую дату.

  • $delivery public
    string
    Метод отправки электронного письма
  • $filePaths public
    array
    Список путей для поиска вложений, если путь к вложению не является абсолютным
  • $from public
    string
    Адрес электронной почты отправителя
  • $headers public
    array

    Ассоциативный массив пользовательских заголовков. Ключи будут иметь префикс 'X-' согласно разделу 4.7.5 RFC2822.

  • $htmlMessage public
    string
    Содержит отрендеренный HTML-сообщение, если он был отправлен.
  • $layout public
    string
    Макет для представления
  • $lineFeed public
    string

    Символ(ы) новой строки, используемые при отправке с помощью функции mail(). По умолчанию используется PHP_EOL. RFC2822 требует CRLF, но некоторые агенты передачи почты Unix автоматически заменяют LF на CRLF (что приводит к удвоению CR, если используется CRLF).

  • $messageId public
    mixed

    Создавать ли заголовок Message-ID для электронного письма. True — создавать Message-ID, False — позволить sendmail (или аналогичному) или строка — полностью переопределить Message-ID.

  • $readReceipt public
    string
    Электронное письмо для подтверждения прочтения
  • $replyTo public
    string
    Адрес электронной почты, на который будет отправлен ответ
  • $return public
    string

    Электронный адрес, который будет использован в случае ошибок, таких как - удалённый почтовый сервер недоступен - удалённый пользователь превысил квоту - неизвестный пользователь

  • $sendAs public
    string
    Формат отправки электронного письма
  • $smtpOptions public
    array
    Список параметров для метода smtp
  • $subject public
    string
    Тема электронного письма
  • $template public
    string
    Шаблон для представления
  • $textMessage public
    string
    Содержит отрендеренный текстовый сообщение, если он был отправлен.
  • $to public
    string
    Получатель электронного письма
  • $xMailer public
    string
    Имя почтового клиента, которым EmailComponent будет идентифицироваться

Наследуемые свойства

  • _Collection, _componentMap, components, settings

Краткое описание методов

  • __construct() public
    Конструктор
  • _findFiles() protected
    Найти указанное вложение в списке путей к файлам
  • _formatAddresses() protected
    Форматировать адреса в массив, где ключ — электронная почта, а значение — псевдоним
  • _formatAttachFiles() protected
    Форматировать массив вложений
  • _strip() protected

    Удалить определённые элементы (например, bcc:, to:, %0a) из заданного значения. Помогает предотвратить инъекцию заголовков/манипуляции содержимым пользователя.

  • initialize() public
    Инициализация компонента
  • reset() public
    Сбросить все внутренние переменные EmailComponent, чтобы отправить новое электронное письмо.
  • send() public
    Отправить электронное письмо с указанным содержимым, шаблоном и макетом

Подробное описание методов

__construct()source public

__construct( ComponentCollection $collection , array $settings array() )

Конструктор

Параметры

ComponentCollection $collection
Коллекция компонентов, которую этот компонент может использовать для ленивой загрузки своих компонентов
array $settings optional array()
Массив настроек конфигурации.

Переопределяет

Component::__construct()

_findFiles()source protected

_findFiles( string $attachment )

Найти указанное вложение в списке путей к файлам

Параметры

string $attachment
Имя файла вложения для поиска

Возвращает

string|null
Путь к найденному файлу

_formatAddresses()source protected

_formatAddresses( array $addresses )

Форматировать адреса в массив, где ключ — электронная почта, а значение — псевдоним

Параметры

array $addresses
Адрес для форматирования.

Возвращает

array

_formatAttachFiles()source protected

_formatAttachFiles( )

Форматировать массив вложений

Возвращает

array
END_OF_DOCUMENT_MARKER

_strip()source protected

_strip( string $value , boolean $message false )

Удаляет определённые элементы (например, bcc:, to:, %0a) из заданного значения. Помогает предотвратить инъекцию заголовков/манипуляции с пользовательским контентом.

Параметры

строка $value
Значение для удаления
логическое значение $message необязательно false
Установите в значение true, чтобы указать содержимое основного сообщения

Возвращает

строка
Очищенное значение

initialize()source public

initialize( Controller $controller )

Инициализация компонента

Параметры

Controller $controller
Контроллер, который создаёт экземпляр

Переопределяет

Component::initialize()

reset()source public

reset( )

Сбрасывает все внутренние переменные EmailComponent, чтобы можно было отправить новое письмо.

send()source public

send( string|array $content null , string $template null , string $layout null )

Отправка письма с указанным содержимым, шаблоном и макетом

Параметры

строка|массив $content необязательно null

Либо массив текстовых строк, либо строка с содержимым. Если вы используете шаблон, эта переменная будет отправлена в шаблоны как $content

строка $template необязательно null
Шаблон для использования при отправке письма
строка $layout необязательно null
Макет для использования для оформления тела письма

Возвращает

логическое значение
Успех

Методы, унаследованные от Component

__get()source public

__get( string $name )

Магический метод для леничной загрузки $components.

Параметры

строка $name
Имя компонента для получения.

Возвращает

смешанный тип
Объект компонента или null.

beforeRedirect()source public

beforeRedirect( Controller $controller , string|array $url , integer $status null , boolean $exit true )

Вызывается перед Controller::redirect(). Позволяет заменить URL, на который будет перенаправлен, новым URL. Возвращаемое значение этого метода может быть массивом или строкой.

Если возвращаемое значение является массивом и содержит ключ 'url'. Вы также можете указать следующее:

  • status Код состояния для перенаправления
  • exit Нужно ли завершить выполнение скрипта после перенаправления.

Если ваше значение возврата — строка или массив, который не содержит ключ 'url', он будет использован в качестве нового URL для перенаправления.

Параметры

Controller $controller
Контроллер с компонентами, для которых нужно выполнить beforeRedirect
строка|массив $url
Либо строка, либо массив URL, на который происходит перенаправление.
целое число $status необязательно null
Код состояния перенаправления
логическое значение $exit необязательно true
Будет ли скрипт завершен.

Возвращает

массив|null
Либо массив, либо null.

Ссылка

http://book.cakephp.org/2.0/ru/controllers/components.html#Component::beforeRedirect

beforeRender()source public

beforeRender( Controller $controller )

Вызывается перед Controller::beforeRender(), и до загрузки класса представления, и перед Controller::render()

Параметры

Controller $controller
Контроллер с компонентами, для которых нужно выполнить beforeRender

Ссылка

http://book.cakephp.org/2.0/ru/controllers/components.html#Component::beforeRender

shutdown()source public

shutdown( Controller $controller )

Вызывается после Controller::render() и перед выводом данных в браузер.

Параметры

Controller $controller
Контроллер с компонентами, для которых нужно выполнить shutdown

Ссылка

http://book.cakephp.org/2.0/ru/controllers/components.html#Component::shutdown

startup()source public

startup( Controller $controller )

Вызывается после Controller::beforeFilter() и перед действием контроллера

Параметры

Controller $controller
Контроллер с компонентами, для которых нужно выполнить startup

Ссылка

http://book.cakephp.org/2.0/ru/controllers/components.html#Component::startup

Методы, унаследованные от CakeObject

_mergeVars()source protected

_mergeVars( array $properties , string $class , boolean $normalize true )

Объединяет свойства $property этого объекта со свойствами в определении $class. Значение свойства этого класса будет объединённо поверх значения $class.

Это обеспечивает некоторую DRY-магию, предоставляемую CakePHP. Если вы хотите её отключить, переопределите этот метод как пустую функцию.

Параметры

массив $properties
Имя свойств для объединения.
строка $class
Класс для объединения свойства с ним.
логическое значение $normalize необязательно true
Установите в true, чтобы выполнить свойства через Hash::normalize() перед объединением.

_set()source protected

_set( array $properties array() )

Позволяет установить несколько свойств объекта в одной строке кода. Будет устанавливать только свойства, которые являются частью объявления класса.

Параметры

массив $properties необязательно array()
Ассоциативный массив, содержащий свойства и соответствующие значения.

_stop()source protected

_stop( integer|string $status 0 )

Останавливает выполнение текущего скрипта. Оборачивает exit(), что облегчает тестирование.

Параметры

целое число|строка $status необязательно 0
см. http://php.net/exit для значений

dispatchMethod()source public

dispatchMethod( string $method , array $params array() )

Вызывает метод этого объекта с заданными параметрами. Предоставляет OO-обёртку для call_user_func_array

Параметры

строка $method
Имя вызываемого метода
массив $params необязательно array()
Список параметров для использования при вызове $method

Возвращает

смешанный тип
Возвращает результат вызова метода

log()source public

log( string $msg , integer $type LOG_ERR , null|string|array $scope null )

Удобный метод для записи сообщения в CakeLog. См. CakeLog::write() для получения дополнительной информации о записи в журналы.

Параметры

строка $msg
Сообщение журнала
целое число $type необязательно LOG_ERR
Постоянная типа ошибки. Определена в app/Config/core.php.
null|строка|массив $scope необязательно null

Область(и), в которой создается сообщение журнала. См. CakeLog::config() для получения дополнительной информации о областях ведения журнала.

Возвращает

логическое значение
Успех записи в журнал
END_OF_DOCUMENT_MARKER

requestAction()source public

requestAction( string|array $url , array $extra array() )

Вызывает метод контроллера из любой точки. Может использоваться для связи контроллеров или подключения плагинов к основному приложению. requestAction может использоваться для возврата рендеренных представлений или получения значения возврата из действий контроллера.

Внутри этот метод использует Router::reverse() для преобразования параметра $url в строковый URL. Вы должны использовать форматы URL, совместимые с Router::reverse().

Передача данных POST и GET

Данные POST и GET могут быть смоделированы в requestAction. Используйте $extra['url'] для данных GET. Параметр $extra['data'] позволяет моделировать данные POST.

Параметры

string|array $url

URL в виде строки или массива. В отличие от других массивов URL в CakePHP, этот URL не будет автоматически обрабатывать переданные и именованные аргументы в параметре $url.

array $extra optional array()

Если массив содержит ключ "return", он устанавливает AutoRender в значение true. Также может использоваться для отправки данных GET/POST и именованных/переданных аргументов.

Возвращает

mixed

Логическое значение true или false при успехе/неудачи или содержимое рендеренного действия, если в $extra задан ключ "return".


toString()source public

toString( )

Преобразование CakeObject в строку. Каждый класс может переопределять этот метод по необходимости.

Возвращает

string
Имя этого класса

Подробности свойств

$_controllersource

protected Controller

Ссылка на контроллер

null

$additionalParamssource

public string

Список дополнительных заголовков

Эти значения НЕ будут использоваться, если вы используете режим защиты и функцию mail()

null

$attachmentssource

public array

Список файлов, которые должны быть прикреплены к электронному письму.

Может быть как абсолютными, так и относительными путями

array()

$bccsource

public array

Скрытая копия

Список электронных адресов, которые должны получить копию письма. Получатель НЕ сможет увидеть этот список.

array()

$ccsource

public array

Копия

Список электронных адресов, которые должны получить копию письма. Получатель СМОЖЕТ увидеть этот список.

array()

$charsetsource

public string

Кодировка символов письма

'utf-8'

$datesource

public string

Дата, которая должна быть помещена в заголовок Date. Она должна соответствовать стандарту RFC2822. Оставьте null, чтобы была сгенерирована сегодняшняя дата.

null

$deliverysource

public string

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

Поддерживаемые методы: - mail - smtp - debug

'mail'

$filePathssource

public array

Список путей для поиска, если вложение не является абсолютным

array()

$fromsource

public string

Адрес электронной почты, с которого отправляется письмо

null

$headerssource

public array

Ассоциативный массив пользовательских заголовков. Ключи будут префиксрованы 'X-' в соответствии с RFC2822 Раздел 4.7.5

array()

$htmlMessagesource

public string

Содержит рендеренное HTML сообщение, если оно было отправлено.

null

$layoutsource

public string

Шаблон для представления

'default'

$lineFeedsource

public string

Символ(ы) перевода строки, который(е) будет(и) использоваться при отправке с помощью функции mail() По умолчанию используется PHP_EOL. RFC2822 требует CRLF, но некоторые агенты передачи почты Unix автоматически заменяют LF на CRLF (что приводит к удвоению CR, если используется CRLF).

PHP_EOL

$messageIdsource

public mixed

Генерировать ли заголовок Message-ID для электронной почты. True для генерации Message-ID, False для обработки sendmail (или подобного) или строка для полного переопределения Message-ID.

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

true

$readReceiptsource

public string

Адрес электронной почты для получения уведомления о прочтении

null

$replyTosource

public string

Адрес электронной почты, на который будет отправлен ответ

null

$returnsource

public string

Адрес электронной почты, который будет использован в случае ошибок, таких как - Отдалённый почтовый сервер недоступен - Отдалённый пользователь превысил свой лимит - Неизвестный пользователь

null

$sendAssource

public string

Формат, в котором должно быть отправлено письмо

Поддерживаемые форматы: - text - html - both

'text'

$smtpOptionssource

public array

Список опций для метода smtp mail

Опции: - порт - хост - таймаут - имя пользователя - пароль - клиент

array()

$subjectsource

public string

Тема письма

null
END_OF_DOCUMENT_MARKER

$templatesource

public string

Шаблон для представления

null

$textMessagesource

public string

Содержит отрендеренное простое текстовое сообщение, если оно было отправлено.

null

$tosource

public string

Получатель электронного письма

null

$xMailersource

public string

Как EmailComponent должно себя идентифицировать

'CakePHP Email Component'

© 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.
https://api.cakephp.org/2.9/class-EmailComponent.html

Spec-Zone.ru

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