Глава 17. Zend_Mail

Содержание

17.1. Введение
17.2. Отправка через SMTP
17.3. Отправка нескольких сообщений за одно соединение SMTP
17.4. Использование разных соединений
17.5. Сообщение в формате HTML
17.6. Вложения
17.7. Добавление получателей
17.8. Контроль за разделителями MIME
17.9. Дополнительные заголовки
17.10. Наборы символов
17.11. Кодировка
17.12. SMTP-аутентификация
17.13. Securing SMTP Transport
17.14. Reading Mail Messages
17.14.1. Simple example using Pop3
17.14.2. Opening a local storage
17.14.3. Opening a remote storage
17.14.4. Fetching messages and simple methods
17.14.5. Working with messages
17.14.6. Using folders
17.14.7. Advanced Use

17.1. Введение

Zend_Mail предоставляет обобщенный функционал для формирования и отправки как текстовых, так и MIME-сообщений электронной почты. Сообщения могут отправляться Zend_Mail посредством встроенной функции PHP mail() или прямого соединения SMTP.

Пример 17.1. Простое сообщение электронной почты

Простое сообщение электронной почты содержит несколько получателей, заголовок сообщения, тело сообщения и отправителя. Чтобы отправить такое электронное сообщение, используя функцию PHP mail(), сделайте следующее:

<?php
require_once 'Zend/Mail.php';
$mail = new Zend_Mail();
$mail->setBodyText('This is the text of the mail.');
$mail->setFrom('somebody@example.com', 'Some Sender');
$mail->addTo('somebody_else@example.com', 'Some Recipient');
$mail->setSubject('TestSubject');
$mail->send();
?>   
[Замечание] Минимально необходимые определения

Чтобы отправить сообщение с помощью Zend_Mail, вы должны указать как минимум одного получателя, отправителя (например, с помощью setFrom()), и текст сообщения (текстовое и/или в формате HTML).

Для большинства атрибутов сообщений электронной почты есть методы "get" для чтения информации, сохраненной в объекте сообщения. За более подробной информацией, пожалуйста, обратитесь к документации по API. Особым является метод getRecipients(). Он возвращает массив с адресами электронной почты получателей, в порядке их добавления.

В целях безопасности Zend_Mail фильтрует все содержимое заголовков для предотвращения инъекций в заголовки с использованием символов новой строки (\n).