如何使用Zend_Mail发送邮件

Author Avatar
在路上 12月 27, 2011

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
<?php
class Lampkid_Mail
{
protected $mail ;
public function __construct()
{
//set_time_limit(0); //不限制时间
$sender = "xxx@gmail.com"; //发件人邮箱
$smtp = 'smtp.gmail.com'; //SMTP服务器
$account = "XXX"; //邮箱帐号,即@gmail.com前面的那部分
$display_name = "要显示的发送人姓名或昵称";
$password = ""; //发件人邮箱的密码
$this->mail = new Zend_Mail("UTF-8");
/*
* 使用用户名密码验证帐号
* 特别要注意你的SMTP使用的连接方式,有可能是ssl或tls
*/
$config = array('auth' => 'login',
'username' => $account,
'password' => $password,
'ssl' => "ssl"
);
$transport = new Zend_Mail_Transport_Smtp($smtp, $config);
$this->mail->setDefaultTransport($transport);
$this->mail->setFrom($sender, $display_name);
}
//$to 可以是一个email地址数组,也可以是一个email地址
public function send($to, $subject, $content,$has_attach=false, $attach='' )
{
$this->mail->setSubject("=?UTF-8?B?".base64_encode($subject)."?=");
$this->mail->setBodyHtml($content);
$this->mail->addTo($to,'Test');
//可以增加附件
if( true == $has_attach)
{
$mine_type = "image/png";
$this->mail->createAttachment(file_get_contents($attach), $mine_type,
Zend_Mime::DISPOSITION_INLINE,
Zend_Mime::ENCODING_BASE64);
}
$this->mail->send();
}
}

参考:

Zend Framework Reference Guide

Zend China

叫我吹水,别叫我西门 百度博客

2017-08-27 整理