PHPMailer是一个封装好的PHP邮件发送类,支持发送HTML内容的电子邮件,以及可以添加附件发送,并不像PHP本身mail()函数需要服务器环境支持,您只需要设置邮件服务器以相关信息就能实现邮件发送功能。
首先需要下载PHPMailer类包:点击下载
php代码实现如下:
<?php
require('class.phpmailer.php');
$mail = new PHPMailer(); //实例化
$mail->IsSMTP(); // 启用SMTP
$mail->Host = "smtp.163.com"; //SMTP服务器 163邮箱例子
//$mail->Host = "smtp.126.com"; //SMTP服务器 126邮箱例子
//$mail->Host = "smtp.qq.com"; //SMTP服务器 qq邮箱例子
$mail->Port = 25; //邮件发送端口
$mail->SMTPAuth = true; //启用SMTP认证
$mail->CharSet = "UTF-8"; //字符集
$mail->Encoding = "base64"; //编码方式
$mail->Username = "abc@163.com"; //你的邮箱
$mail->Password = "xxx"; //你的密码
$mail->Subject = "xxx你好"; //邮件标题
$mail->From = "abc@163.com"; //发件人地址(也就是你的邮箱)
$mail->FromName = "xxx"; //发件人姓名
$address = "xxx@qq.com";//收件人email
$mail->AddAddress($address1, "xxx1"); //添加收件人1(地址,昵称)
$mail->AddAddress($address2, "xxx2"); //添加收件人2(地址,昵称)
$mail->AddAttachment('xx.xls','我的附件.xls'); // 添加附件,并指定名称
$mail->AddAttachment('xx1.xls','我的附件1.xls'); // 可以添加多个附件
$mail->AddAttachment('xx2.xls','我的附件2.xls'); // 可以添加多个附件
$mail->IsHTML(true); //支持html格式内容
$mail->AddEmbeddedImage("logo.jpg", "my-attach", "logo.jpg"); //设置邮件中的图片
$mail->Body = '你好, <b>朋友</b>! <br/>这是一封邮件!'; //邮件主体内容
//发送
if(!$mail->Send()) {
echo "发送失败: " . $mail->ErrorInfo;
} else {
echo "成功";
}
?>
附上:常用的邮箱服务器(SMTP、POP3)地址、端口
sina.com:
POP3服务器地址:pop3.sina.com.cn(端口:110) SMTP服务器地址:smtp.sina.com.cn(端口:25)
sinaVIP:
POP3服务器:pop3.vip.sina.com (端口:110) SMTP服务器:smtp.vip.sina.com (端口:25)
sohu.com:
POP3服务器地址:pop3.sohu.com(端口:110) SMTP服务器地址:smtp.sohu.com(端口:25)
126邮箱:
POP3服务器地址:pop.126.com(端口:110) SMTP服务器地址:smtp.126.com(端口:25)
139邮箱:
POP3服务器地址:POP.139.com(端口:110) SMTP服务器地址:SMTP.139.com(端口:25)
163.com:
POP3服务器地址:pop.163.com(端口:110) SMTP服务器地址:smtp.163.com(端口:25)
QQ邮箱
POP3服务器地址:pop.qq.com(端口:110)
SMTP服务器地址:smtp.qq.com (端口:25)
QQ企业邮箱
POP3服务器地址:pop.exmail.qq.com (SSL启用 端口:995) SMTP服务器地址:smtp.exmail.qq.com(SSL启用 端口:587/465)
yahoo.com:
POP3服务器地址:pop.mail.yahoo.com SMTP服务器地址:smtp.mail.yahoo.com
yahoo.com.cn:
POP3服务器地址:pop.mail.yahoo.com.cn(端口:995) SMTP服务器地址:smtp.mail.yahoo.com.cn(端口:587