使用PHPMailer 發送郵件
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地址和端口。
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。