thinkPHP中利用phhmailer发送邮箱验证码

一,首先用composer安装phpmailer

1、未安装composer的是官网安装

2、配置composer全局变量

composer config -g repo.packagist composer https://packagist.phpcomposer.com

3、安装phpmailer

composer require phpmailer/phpmailer

2)从GitHub上下载PHPMailer

4、如果是从GitHub上下载的,将其放在项目的开放目录下,我在ThinkPHP下面

thinkPHP中利用phhmailer发送邮箱验证码_第1张图片
所在目录

5、在function.php里面加上发送验证码的方法

function send_mail($toemail, $name, $subject = '', $body = '',$attachment = null) {

    require './ThinkPHP/PHPMailer/PHPMailer/src/PHPMailer.php';

    require './ThinkPHP/PHPMailer/PHPMailer/src/SMTP.php';

    require './ThinkPHP/PHPMailer/PHPMailer/src/Exception.php';

    $mail = new PHPMailer\PHPMailer\PHPMailer();

    $mail->CharSet = 'UTF-8';          //设定邮件编码,默认ISO-8859-1,如果发中文此项必须设置,否则乱码

    $mail->IsSMTP();                    // 设定使用SMTP服务

    $mail->SMTPDebug = 2;              // SMTP调试功能 0=关闭 1 = 错误和消息 2 = 消息

    $mail->SMTPAuth = true;            // 启用 SMTP 验证功能

    $mail->SMTPSecure = 'ssl';          // 使用安全协议

    $mail->Host = "smtp.163.com"; // smtp服务器的名称,这里用的是163邮箱,qq: smtp.qq.com , 163:smtp.163.com,sina:smtp.sina.com

    $mail->Port = 465;                  // SMTP服务器的端口号

    $mail->Username = '[email protected]';    // SMTP服务器用户名

    $mail->Password = 'zxc06245379';    // SMTP服务器密码//这里的密码可以是邮箱登录密码也可以是SMTP服务器密码

    $mail->SetFrom('[email protected]', '68房源');

    $replyEmail = '';                  //留空则为发件人EMAIL

    $replyName = '';                    //回复名称(留空则为发件人名称)

    $mail->AddReplyTo($replyEmail, $replyName);

    $mail->Subject = $subject;

    $mail->MsgHTML($body);

    $mail->AddAddress($toemail, $name);

    if (is_array($attachment)) { // 添加附件

        foreach ($attachment as $file) {

            is_file($file) && $mail->AddAttachment($file);

        }

}

    return $mail->Send() ? true : $mail->ErrorInfo;

}

6、在UserController里面写上发送的方法

thinkPHP中利用phhmailer发送邮箱验证码_第2张图片
请求发送代码

7、完成

你可能感兴趣的:(thinkPHP中利用phhmailer发送邮箱验证码)