PHPMailer 是一个强大的 PHP 编写的邮件发送类,使用它可以更加便捷的发送邮件,并且还能发送附件和 HTML 格式的邮件,同时还能使用 SMTP 服务器来发送邮件。
大家也许会问,PHP 不是已经内置了 mail() 函数了吗,为什么要用 PHPMailer 呢?mail() 函数功能并不完善,只能发送文本的 e-mail,并且 mail() 函数只能应用在 Linux 服务器(很多装在 Win 主机的 WP 博客用户注册收不到邮件也是这个原因),还有一个最大的问题就是使用 mail() 函数发送的邮件没有进行身份验证,很多邮件收不到使用 mail() 函数发送的邮件或者发送的邮件直接进入垃圾邮箱。
PHPMailer 主要功能
- 在邮件中包含多个 TO、CC、BCC 和 REPLY-TO。
- 平台应用广泛,支持的 SMTP 服务器包括 Sendmail、qmail、Postfix、Gmail、Imail、Exchange 等等。
- 支持嵌入图像,附件,HTML 邮件。
- 可靠的强大的调试功能。
- 支持 SMTP 认证。
- 自定义邮件头。
- 支持 8bit、base64、binary 和 quoted-printable 编码。
PHPMailer 的简单使用
这里使用最常用的 Gmail 来做介绍。请到这里查看其他常用邮箱的 SMTP 地址和端口。
代码语言:javascript复制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。