Глава 20. Zend_Mail

Содержание

20.1. Введение
20.2. Отправка через SMTP
20.3. Отправка нескольких сообщений за одно соединение SMTP
20.4. Использование разных соединений
20.5. Сообщение в формате HTML
20.6. Вложения
20.7. Добавление получателей
20.8. Контроль за разделителями MIME
20.9. Дополнительные заголовки
20.10. Наборы символов
20.11. Кодировка
20.12. SMTP-аутентификация
20.13. Securing SMTP Transport
20.14. Reading Mail Messages
20.14.1. Simple example using Pop3
20.14.2. Opening a local storage
20.14.3. Opening a remote storage
20.14.4. Fetching messages and simple methods
20.14.5. Working with messages
20.14.6. Checking for flags
20.14.7. Using folders
20.14.8. Advanced Use

20.1. Введение

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

Пример 20.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).