• Tp5.0 PHPMailer邮件发送


    今天突然想起来邮件发送,就看了一下PHPmailer,其实这个用起来很简单,都是封装好的 https://github.com/PHPMailer/PHPMailer,直接下载下来之后,把他放入TP5.0 框架的extend文件夹里面

    在Controller里面创建一个文件Mail.php,代码如下

     1 /**
     2  * Created by PhpStorm.
     3  * User: luxiao
     4  * Date: 2017/5/8
     5  * Time: 11:23
     6  */
     7 
     8 namespace appindexcontroller;
     9 
    10 use PHPMailerPHPMailerPHPMailer;
    11 use PHPMailerPHPMailerException;
    12 use thinkController;
    13 
    14 class Mail extends Controller
    15 {
    16 
    17     //发送邮箱验证码
    18     public function email()
    19     {
    20         $toemail = 'xxxxx@163.com';//定义收件人的邮箱
    21 
    22         $mail = new PHPMailer();
    23 
    24         $mail->isSMTP();// 使用SMTP服务
    25         $mail->CharSet = "utf8";// 编码格式为utf8,不设置编码的话,中文会出现乱码
    26         $mail->Host = "smtp.qq.com";// 发送方的SMTP服务器地址
    27         $mail->SMTPAuth = true;// 是否使用身份验证
    28         $mail->Username = "xxxxx@qq.com";// 发送方的QQ邮箱用户名,就是自己的邮箱名
    29         $mail->Password = "xxxx";// 发送方的邮箱密码,不是登录密码,是qq的第三方授权登录码,要自己去开启,在邮箱的设置->账户->POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务 里面
    30         $mail->SMTPSecure = "ssl";// 使用ssl协议方式,
    31         $mail->Port = 465;// QQ邮箱的ssl协议方式端口号是465/587
    32 
    33             $mail->setFrom("xxxxx@qq.com","xxxx");// 设置发件人信息,如邮件格式说明中的发件人,
    34             $mail->addAddress($toemail,'xxxxx');// 设置收件人信息,如邮件格式说明中的收件人
    35             $mail->addReplyTo("xxxxx@qq.com","Reply");// 设置回复人信息,指的是收件人收到邮件后,如果要回复,回复邮件将发送到的邮箱地址
    36             //$mail->addCC("xxx@163.com");// 设置邮件抄送人,可以只写地址,上述的设置也可以只写地址(这个人也能收到邮件)
    37             //$mail->addBCC("xxx@163.com");// 设置秘密抄送人(这个人也能收到邮件)
    38             //$mail->addAttachment("bug0.jpg");// 添加附件
    39 
    40 
    41             $mail->Subject = "这是一个测试邮件";// 邮件标题
    42             $mail->Body = "邮件内容是 <b>我就是玩玩</b>,哈哈哈!";// 邮件正文
    43             //$mail->AltBody = "This is the plain text纯文本";// 这个是设置纯文本方式显示的正文内容,如果不支持Html方式,就会用到这个,基本无用
    44 
    45             if(!$mail->send()){// 发送邮件
    46                 echo "Message could not be sent.";
    47                 echo "Mailer Error: ".$mail->ErrorInfo;// 输出错误信息
    48             }else{
    49                 echo '发送成功';
    50             }
    51         }
    52 }

    设置好上面的之后,就可以了;我自己测试之后可以发送成功,没有什么问题!

  • 相关阅读:
    MYSQL 5.7修改密码,登录问题
    linux 系统 cp: omitting directory 问题解决
    闭包函数是什么
    ecshop 前台个人中心修改侧边栏 和 侧边栏显示不全 或 导航现实不全
    ecshop 前台分页
    php 5.3新增的闭包语法介绍function() use() {}
    剖析 Linux hypervisor
    长久的深情能否维系
    私有云的迁移:从VMware到OpenStack
    Openstack 架构简述
  • 原文地址:https://www.cnblogs.com/MyIsLu/p/6825676.html
Copyright © 2020-2023  润新知