tp5.1使用阿里邮箱发送邮件

一、 下载PHPMailer
github连接:https://github.com/PHPMailer/PHPMailer
二、 在extend新建文件夹PHPMailer,并将PHPMailer-master\src里的SMTP.php、PHPMailer.php、Exception.php放入该文件夹。
tp5.1使用阿里邮箱发送邮件_第1张图片
三、 定义发送邮件方法

在common.php定义该方法。

use PHPMailer\PHPMailer;//引用
use PHPMailer\Exception;
use PHPMailer\SMTP;

/**
 1. 发送邮件
 */
function send_mail($to,$title,$content)
{
    try {
        $mail = new PHPMailer(true);
        $mail->SMTPDebug = 2;
        $mail->CharSet = 'UTF-8';//包含中文字符
        $mail->isSMTP();
        $mail->Host = 'smtp.mxhichina.com';  //阿里邮箱的服务器地址
        $mail->SMTPAuth = true;
        $mail->Username = 'XXX';//授权邮箱
        $mail->Password = 'XXX';//邮箱登陆密码
        $mail->SMTPSecure = 'ssl';// 使用 ssl 加密方式登录
        $mail->Port = 465;//smtp 服务器的远程服务器端口号
        $mail->setFrom('XXX', 'XXX');//授权邮箱,发件人昵称
        $mail->addAddress($to); // 收件人邮箱
        $mail->isHTML(true); // Set email format to HTML
        $mail->Subject = $title;//标题
        $mail->Body = $content;//内容
        return $mail->send();
        echo 'Message has been sent';
    } catch (Exception $e) {
        Exception($mail->ErrorInfo);
    }
}

注意两点:一是阿里不同于QQ,不支持授权码,这里直接使用邮箱的登陆密码;二是如果出现Class ‘PHPMailer\PHPMailer\PHPMailer’ not found的问题,需要修改命名空间。打开PHPMailer.php,修改为namespace PHPMailer;
四、调用方法

$to='[email protected]';
$title='找回密码';
$content='恭喜你,邮件测试成功。';
dump(send_mail($to,$title,$content));

五、测试
tp5.1使用阿里邮箱发送邮件_第2张图片

你可能感兴趣的:(不知名)