使用 PHPMailer 发送邮件

PHPMailer 是一个强大的 PHP 编写的邮件发送类,使用它可以更加便捷的发送邮件,并且还能发送附件和 HTML 格式的邮件,同时还能使用 SMTP 服务器来发送邮件。

大家也许会问,PHP 不是已经内置了 mail() 函数了吗,为什么要用 PHPMailer 呢?mail() 函数功能并不完善,只能发送文本的 e-mail,并且 mail() 函数只能应用在 Linux 服务器(很多装在 Win 主机的 WP 博客用户注册收不到邮件也是这个原因),还有一个最大的问题就是使用 mail() 函数发送的邮件没有进行身份验证,很多邮件收不到使用 mail() 函数发送的邮件或者发送的邮件直接进入垃圾邮箱。

PHPMailer 主要功能

  1. 在邮件中包含多个 TO、CC、BCC 和 REPLY-TO。
  2. 平台应用广泛,支持的 SMTP 服务器包括 Sendmail、qmail、Postfix、Gmail、Imail、Exchange 等等。
  3. 支持嵌入图像,附件,HTML 邮件。
  4. 可靠的强大的调试功能。
  5. 支持 SMTP 认证。
  6. 自定义邮件头。
  7. 支持 8bit、base64、binary 和 quoted-printable 编码。

PHPMailer 的简单使用

这里使用最常用的 Gmail 来做介绍。请到这里查看其他常用邮箱的 SMTP 地址和端口


require_once('class.phpmailer.php');
require_once("class.smtp.php"); 
$mail  = new PHPMailer(); 

$mail->CharSet    ="UTF-8";                 //设定邮件编码,默认ISO-8859-1,如果发中文此项必须设置为 UTF-8
$mail->IsSMTP();                            // 设定使用SMTP服务
$mail->SMTPAuth   = true;                   // 启用 SMTP 验证功能
$mail->SMTPSecure = "ssl";                  // SMTP 安全协议
$mail->Host       = "smtp.gmail.com";       // SMTP 服务器
$mail->Port       = 465;                    // SMTP服务器的端口号
$mail->Username   = "your_name@gmail.com";  // SMTP服务器用户名
$mail->Password   = "your_password";        // SMTP服务器密码
$mail->SetFrom('发件人地址', '发件人名称');    // 设置发件人地址和名称
$mail->AddReplyTo("邮件回复人地址","邮件回复人名称"); 
                                            // 设置邮件回复人地址和名称
$mail->Subject    = '';                     // 设置邮件标题
$mail->AltBody    = "为了查看该邮件,请切换到支持 HTML 的邮件客户端"; 
                                            // 可选项,向下兼容考虑
$mail->MsgHTML('');                         // 设置邮件内容
$mail->AddAddress('收件人地址', "收件人名称");
//$mail->AddAttachment("images/phpmailer.gif"); // 附件 
if(!$mail->Send()) {
    echo "发送失败:" . $mail->ErrorInfo;
} else {
    echo "恭喜,邮件发送成功!";
}

下载:PHPMailer,如果是 WordPress 用户,则无需下载,WordPress 已经自带 PHPMailer。

标签:

热门文章