第 20 章 Zend_Mail

目录

20.1. 简介
20.2. 通过SMTP发送邮件
20.3. 通过一个SMTP连接发送多个邮件
20.4. 使用不同的Transport对象
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. 使用Zend_Mail发送简单邮件

一个简单邮件由一个或者几个收件人,一个主题,一个邮件主体和一个发件人组成。 下面的步骤,使用了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();
?>   
[注意] Minimum definitions

使用Zend_Mail来发送邮件,你至少得指定一个收件人, 一个发件人(例如通过setFrom()方法)和一个邮件消息主体(文本 和/或者 HTML)。

通过“get”方法可以读取绝大多数储存在“mail”对象中的邮件属性,更进一步的细节请参阅API文档。 getRecipients()是一个特例,它返回一个含有所有先前被加入的收件人地址的数组。

出于安全原因,Zend_Mail了过滤邮件头中所有字段, 以防止基于换行符(\n)邮件头注入(header injection)漏洞攻击。