TP---发送电子邮件

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']]);
    }
}
博客园:https://www.cnblogs.com/huixincode
如果此文章对您有所帮助记得打赏哦,一分也是对我的支持和鼓励,谢谢!
转载文章请务必保留出处和署名,谢谢!
原文地址:https://www.cnblogs.com/shx1024/p/11931245.html