• 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 }

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

  • 相关阅读:
    java.io.EOFException ValueOperations.increment()操作后,获取值时有的bug
    使用maven profile指定配置文件打包适用多环境
    关于3Q大战和反垄断
    在ECUG2010上的演讲稿
    让Windows7在启动时自动挂载虚拟磁盘
    也谈并行计算(一)C#版的Parallel.For实现
    给.NET的string类添加一个命令行参数分解的扩展
    顺序表 code
    很高兴开始博客之旅 code
    (原)前端知识杂烩(css系列)
  • 原文地址:https://www.cnblogs.com/MyIsLu/p/6825676.html
Copyright © 2020-2023  润新知