1、开启相关邮箱的SMTP服务,我是用的QQ,下面就以QQ邮箱为例
2、登入邮箱。进入设置
3、点击账户,向下翻,开启SMTP服务,
4、记录一下授权码,后期要用
下面我们开始代码部分,首先→下载←相关文件,在vendor下新建文件夹phpmailer,并把下载的文件放在phpmailer文件下。
我们把发送电子邮件封装成一个方法:
function sendEmail($data = []) {
Vendor('phpmailer.phpmailer');
$mail = new phpmailerPHPMailer(); //实例化
$mail->IsSMTP(); // 启用SMTP
$mail->Host = 'smtp.qq.com'; //SMTP服务器 以QQ邮箱为例子
$mail->Port = 465; //邮件发送端口
$mail->SMTPAuth = true; //启用SMTP认证
$mail->SMTPSecure = "ssl"; // 设置安全验证方式为ssl
$mail->CharSet = "UTF-8"; //字符集
$mail->Encoding = "base64"; //编码方式
$mail->Username = '1528879468@qq.com'; //你的邮箱
$mail->Password = '这里写上面提到的授权码'; //你的密码
$mail->Subject = '来自 ‘记忆、深处’ 的提示'; //邮件标题
$mail->From = '1528879468@qq.com'; //发件人地址(也就是你的邮箱)
$mail->FromName = '打死坏小强'; //发件人姓名
if($data && is_array($data)){
foreach ($data as $k=>$v){
$mail->AddAddress($v['user_email'], "亲"); //添加收件人(地址,昵称)
$mail->IsHTML(true); //支持html格式内容
$mail->Body = $v['content']; //邮件主体内容
//发送成功就删除
if ($mail->Send()) {
echo "发送成功";
}else{
echo "Mailer Error: ".$mail->ErrorInfo;// 输出错误信息
}
}
}
}
控制器中调用
<?php
namespace appindexcontroller;
class Index
{
//数据库备份
public function index()
{
sendEmail([['user_email'=>'这里填写收信人的邮箱','content'=>'欢迎关注打死坏小强的CSDN:https://blog.csdn.net/qq_42455095']]);
}
}