PHPMailer通过QQ服务器发邮件

必要步骤

PHP所需扩展:

socket
openssl

PHPMailer

地址:https://github.com/PHPMailer/PHPMailer

PHPMailer

优点:

  • 可运行在任何平台之上
  • 支持SMTP验证
  • 发送邮时指定多个收件人,抄送地址,暗送地址和回复地址;注:添加抄送、暗送仅- win平台下smtp方式支持
  • 支持多种邮件编码包括:8bit,base64,binary和quoted-printable
  • 支持冗余SMTP服务器,即可以指定主smtp服务器地址也只可以指定备份smtp服务器
  • 支持带附件的邮件,可以为邮件添加任意格式的附件—当然得你的服务器有足够大的带宽支撑
  • 自定义邮件头信息,这跟php中通过header函数发送头信息类似
  • 支持将邮件正文制作成HTMl内容,那么就可以在邮件正文中插入图片
  • 灵活的debug支持
  • 经测试兼容的SMTP服务器包括:Sendmail,qmail,Postfix,Imail,Exchange等

测试代码

SMTPDebug = 1;
//使用smtp鉴权方式发送邮件
$mail->isSMTP();
//smtp需要鉴权 这个必须是true
$mail->SMTPAuth=true;
//qq邮箱的服务器地址
$mail->Host = 'smtp.qq.com';
//设置使用ssl加密方式登录鉴权
$mail->SMTPSecure = 'ssl';
//设置ssl连接smtp服务器的远程服务器端口号
$mail->Port = 465;
//设置smtp消息头 可选
//$mail->Helo = 'smtp.qq.com Server';
////设置发件人主机域 默认为localhost ,建议使用你的域名
$mail->Hostname = 'localhost';
//设置发送的邮件的编码 可选
$mail->CharSet = 'UTF-8';
//设置发件人
$mail->FromName = '孙悟空';
//smtp登录的账号 ,这里填入qq号即可
$mail->Username ='填入登录的账号';
//smtp登录的密码(我用的是授权码)
$mail->Password = '填入登录的密码';
//设置发件人邮箱地址 这里填入上述提到的“发件人邮箱”
$mail->From = '发件人邮箱';
//是否为html编码
$mail->isHTML(true);
//设置收件人邮箱地址 该方法有两个参数 第一个参数为收件人邮箱地址 第二参数为给该地址设置的昵称 
$mail->addAddress('收件人邮箱地址');
//添加多个收件人 则多次调用方法即可
//$mail->addAddress('收件人邮箱地址2');
//添加邮件的主题
$mail->Subject = '发送邮件测试';
//添加邮件正文  isHTML设置成了true,则可以是完整的html字符串 
$mail->Body = "这是一个PHPMailer发送邮件的一个测试用例";
//为该邮件添加附件 第一个参数为附件存放目录 第二参数为附件的名称
$mail->addAttachment('./logo.jpg','log');
//上传多个附件
$mail->addAttachment('./README.md','README');
//发送命令 返回布尔值
$status = $mail->send();
if($status) {
    echo '发送邮件成功';
}else{
    echo '发送邮件失败,错误信息未:'.$mail->ErrorInfo;
}

发送结果

PHPMailer通过QQ服务器发邮件_第1张图片
Paste_Image.png

你可能感兴趣的:(PHPMailer通过QQ服务器发邮件)