好久好久没有倒腾发邮件了,更是很久没有使用PHPMailer了,好在这东东与时俱进,在我php7.2环境下没异常。
https://github.com/Synchro/PHPMailer/releases 下载版本 v5.2.13 (我下了这个)
解压缩文件架重命名为 PHPMailer 复制到 ThinkLibraryVendor 下,删掉多余的东西 docs examples test这几个目录。
新建或添加代码到ApplicationCommonCommonfunction.php

要163邮箱打开smtp,生成客户端授权码,如今不在使用密码登录stmp了切记,这样不安全。

function send_mail($to, $title, $content){
    vendor('PHPMailer.class#PHPMailer');
    vendor('PHPMailer.class#SMTP');
    $mail = new PHPMailer(); //实例化
    $mail->IsSMTP(); // 启用SMTP
    $mail->Host = 'smtp.163.com'; //smtp服务器的名称(这里以163邮箱为例)
    $mail->SMTPAuth = true; //启用smtp认证
    $mail->Username = 'xxxxx@163.com'; //你的邮箱名
    $mail->Password = '9xxxxx'; //邮箱stmp授权密码
    $mail->From = 'xxxxx@163.com'; //发件人地址(也就是你的邮箱地址)
    $mail->FromName = 'xxxxx'; //发件人姓名
    $mail->AddAddress($to, "尊敬的客户");
    $mail->WordWrap = 50; //设置每行字符长度
    $mail->IsHTML(true); // 是否HTML格式邮件
    $mail->CharSet = 'utf-8'; //设置邮件编码
    $mail->Subject = $title; //邮件主题
    $mail->Body = $content; //邮件内容
    $mail->AltBody = "这是一个纯文本的身体在非营利的HTML电子邮件客户端"; //邮件正文不支持HTML的备用显示
    return ($mail->Send());
}

#发送代码
public function test2(){
    send_mail('xxx@qq.com','这是一个测试','好久好久没有使用过smtp了');
}

效果如下
999.jpg