thinkphp5使用phpmail发送qq邮件的实现过程

 更新时间:2023年10月24日 11:22:45   作者:PHP隔壁老王邻居  
这篇文章主要给大家介绍了thinkphp5使用phpmail发送qq邮件的实现过程,文中有详细的代码示例供大家参考,具有一定的参考价值,感兴趣的小伙伴可以自己动手尝试一下

1、使用composer 工具安装,在tp5根目录下执行

composer require phpmailer/phpmailer

安装成功后显示下面目录

2、封装发送邮件方法

function sendEmail($to, $title, $content){
 
    $email=[
         "send_email"=>"231323@qq.com",
        "host"=>"smtp.qq.com",
        "pwd"=>"vrgtobnx2232aogugaaf",
        "encry_type"=> "ssl",
        "port"=>465,
        "send_name"=>"测试",
        "title"=>"QQ邮箱"
    ];
 
    try {
        $mail = new PHPMailer\PHPMailer\PHPMailer(true);
        $mail->isSMTP();
        $mail->Host = $email['host'];  //qq邮箱的服务器地址
        $mail->SMTPAuth = true;
        $mail->Username = $email['send_email'];//授权的qq邮箱
        $mail->Password = $email['pwd'];//授权码,不是密码!!!
        $mail->SMTPSecure = $email['encry_type'];// 使用 ssl 加密方式登录boolean
        $mail->Port = $email['port'];//smtp 服务器的远程服务器端口号
        //Recipients
        $mail->setFrom($email['send_email'], $email['send_name']);//授权的qq邮箱(和上面一样),自己起的昵称
        $mail->addAddress($to);     // 传过来的收件人
        $mail->isHTML(true);                                  // Set email format to HTML
        $mail->Subject = $title;//传过来的标题
        $mail->Body = $content;//传过来的内容
        if($mail->send()){
            return return_msg();
        }else{
            return return_msg(-1,"error");
        }
    } catch (\PHPMailer\PHPMailer\Exception $e) {
        return return_msg(-1,$mail->ErrorInfo);
    }
}
 
  function return_msg($status=1,$msg="ok",$data=[]){
    return [
        "status" => $status,
        "msg" => $msg,
        "data" => $data,
    ];
 
}

3、控制器中调用

function sendEmail($to, $title, $content){
 
    $email=[
         "send_email"=>"231323@qq.com",
        "host"=>"smtp.qq.com",
        "pwd"=>"vrgtobnx2232aogugaaf",
        "encry_type"=> "ssl",
        "port"=>465,
        "send_name"=>"测试",
        "title"=>"QQ邮箱"
    ];
 
    try {
        $mail = new PHPMailer\PHPMailer\PHPMailer(true);
        $mail->isSMTP();
        $mail->Host = $email['host'];  //qq邮箱的服务器地址
        $mail->SMTPAuth = true;
        $mail->Username = $email['send_email'];//授权的qq邮箱
        $mail->Password = $email['pwd'];//授权码,不是密码!!!
        $mail->SMTPSecure = $email['encry_type'];// 使用 ssl 加密方式登录boolean
        $mail->Port = $email['port'];//smtp 服务器的远程服务器端口号
        //Recipients
        $mail->setFrom($email['send_email'], $email['send_name']);//授权的qq邮箱(和上面一样),自己起的昵称
        $mail->addAddress($to);     // 传过来的收件人
        $mail->isHTML(true);                                  // Set email format to HTML
        $mail->Subject = $title;//传过来的标题
        $mail->Body = $content;//传过来的内容
        if($mail->send()){
            return return_msg();
        }else{
            return return_msg(-1,"error");
        }
    } catch (\PHPMailer\PHPMailer\Exception $e) {
        return return_msg(-1,$mail->ErrorInfo);
    }
}
 
  function return_msg($status=1,$msg="ok",$data=[]){
    return [
        "status" => $status,
        "msg" => $msg,
        "data" => $data,
    ];
 
}

4、运行后结果

到此这篇关于thinkphp5使用phpmail发送qq邮件的实现过程的文章就介绍到这了,更多相关thinkphp5 phpmail发送qq邮件内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • ThinkPHP查询语句与关联查询用法实例

    ThinkPHP查询语句与关联查询用法实例

    这篇文章主要介绍了ThinkPHP查询语句与关联查询用法,以实例的形式常见的查询方法,包括数组作为查询条件及对象方式来查询等技巧,需要的朋友可以参考下
    2014-11-11
  • php生成验证码,缩略图及水印图的类分享

    php生成验证码,缩略图及水印图的类分享

    这篇文章主要给大家分享的是php生成验证码,缩略图,及水印图的类,十分的实用,有需要的小伙伴可以参考下
    2016-04-04
  • 实例化php类时传参的方法分析

    实例化php类时传参的方法分析

    这篇文章主要介绍了实例化php类时传参的方法,结合实例形式分析了实例化php类时传参的相关原理、实现方法与操作注意事项,需要的朋友可以参考下
    2020-06-06
  • php网上商城购物车设计代码分享

    php网上商城购物车设计代码分享

    我们要做的是一个可以包含促销活动的购物车,所以比较其他简单的购物车,会稍微复杂一点。(用的是PHP的zend framework框架)
    2012-02-02
  • laravel通用化的CURD的实现

    laravel通用化的CURD的实现

    这篇文章主要介绍了laravel通用化的CURD的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-12-12
  • ThinkPHP多语言支持与多模板支持概述

    ThinkPHP多语言支持与多模板支持概述

    这篇文章主要介绍了ThinkPHP多语言支持与多模板支持,是ThinkPHP非常重要的技巧,需要的朋友可以参考下
    2014-08-08
  • 简单介绍PHP非阻塞模式

    简单介绍PHP非阻塞模式

    非阻塞模式是指利用socket事件的消息机制,Server端与Client端之间的通信处于异步状态,本文给大家介绍php非阻塞模式,感兴趣的朋友一起学习吧
    2016-03-03
  • PHP实现常用排序算法的方法

    PHP实现常用排序算法的方法

    本文主要介绍了一些常用的排序算法,以及PHP的代码实现等,感兴趣的朋友跟随小编一起看看吧
    2020-02-02
  • 三个思路解决laravel上传文件报错:413 Request Entity Too Large问题

    三个思路解决laravel上传文件报错:413 Request Entity Too Large问题

    上传图片的时候,是用laravel自带的上传图片的方法,一下气上传了20张,结果就无情报错:413 Request Entity Too Large,后面查一下,这个报错信息是nginx报的错误,不是php报的错误。也就是说在上传图片的时候被nginx拦截了
    2017-11-11
  • 最新制作ThinkPHP3.2.3完全开发手册

    最新制作ThinkPHP3.2.3完全开发手册

    本文给大家分享的是作者花了3个多小时制作完成的ThinkPHP3.2.3完全开发手册,非常的细致全面,有需要的小伙伴可以参考下
    2015-11-11

最新评论