首先在工程内使用composer安装phpmailer:
composer require phpmailer/phpmailer
后台发送邮件的函数(发送人、收件人等可自行传参设置),调用即可:
function sendMail(){
//实例化PHPMailer核心类
$mail = new \PHPMailer\PHPMailer\PHPMailer();
$toemail = 'yyyyyyyy@qq.com';//收件的邮箱
$mail->isSMTP();// 使用SMTP服务
$mail->CharSet = "utf8";// 编码格式
$mail->Host = "smtp.qq.com";// 发送方的SMTP服务器地址,163邮箱为smtp.163.com
$mail->SMTPAuth = true;// 是否使用身份验证
$mail->Username = "xxxxxxxx@qq.com";// 发送方邮箱
$mail->Password = "smgfwkvtvqfjbegf";// 发送方邮箱密码,不是登录密码,是第三方授权密码,在邮箱的设置->账户->POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务
$mail->SMTPSecure = "ssl";// 使用ssl协议方式
$mail->Port = 465;// qq邮箱的ssl协议方式端口号是465/587,163邮箱端口为25
$mail->setFrom("xxxxxxxx@qq.com","张三");// 设置发件人信息
$mail->addAddress($toemail,'李四');// 设置收件人信息
$mail->addReplyTo("xxxxxxxx@qq.com","张三");// 设置回复人信息
$mail->addCC("zzzzzzzz@163.com");// 设置邮件抄送人
$mail->addBCC("aaaaaaaa@163.com");// 设置秘密抄送人
$mail->addAttachment("image.jpg");// 添加附件
$mail->Subject = "测试php发送qq邮箱";// 邮件标题
$mail->Body = "这是邮件内容";// 邮件正文
if(!$mail->send()){// 发送邮件
echo "邮件没有被发送。";
echo "异常原因:".$mail->ErrorInfo;// 输出错误信息
}else{
echo '发送成功';
}
}