zoukankan      html  css  js  c++  java
  • TP5使用phpmailer实现邮件发送

    1、从github下载PHPMailer,在vendor目录中新建文件夹phpmailer,将压缩包中的class.phpmailer.php和class.smtp.php复制到phpmailer中,更改class.phpmailer.php文件名为phpmailer.php

    2、在两个文件顶部加上命名空间namespace phpmailer;

    3将phpmailer.php中class phpmailerException extends Exception 改为class phpmailerException extends Exception 

    4、在app/common.php下加上

    use phpmailerphpmailer;
    /**
    * 发送邮箱
    * @param type $data 邮箱队列数据 包含邮箱地址 内容
    */
    function sendEmail($data = []) {
      Vendor('phpmailer.phpmailer');
      $mail = new PHPMailer(); //实例化
      $mail->IsSMTP(); // 启用SMTP
      $mail->Host = 'smtp.163.com'; //SMTP服务器 以163邮箱为例子 
      $mail->Port = 465;  //邮件发送端口
      $mail->SMTPAuth = true;  //启用SMTP认证
      $mail->SMTPSecure = "ssl";   // 设置安全验证方式为ssl
      $mail->CharSet = "UTF-8"; //字符集
      $mail->Encoding = "base64"; //编码方式
      $mail->Username = 'xxxx@163.com';  //你的邮箱 
      $mail->Password = 'xxxxxx';  //你的smtp密码 
      $mail->Subject = '资源鸟系统提示'; //邮件标题  
      $mail->From = 'xxxx@163.com';  //发件人地址(也就是你的邮箱)
      $mail->FromName = 'xxx';  //发件人姓名
      if($data && is_array($data)){
        foreach ($data as $k=>$v){
          $mail->AddAddress($v['user_email'], "亲"); //添加收件人(地址,昵称)
          $mail->IsHTML(true); //支持html格式内容
          $mail->Body = $v['content']; //邮件主体内容
          //发送成功就删除
          if ($mail->Send()) {
            echo "发送成功";
          }else{
              echo "Mailer Error: ".$mail->ErrorInfo;// 输出错误信息  
          }
        }
      }           
    }

    5、在任何地方都可以调用:sendEmail([['user_email'=>'XXXX@126.com','content'=>'邮件发送测试']]);

    6、如果想发送附件,则加上:

    $mail->addAttachment('文件路径','文件名'); 
    //$mail->addAttachment(iconv('utf-8', 'gb2312','文件路径'),'文件名');   //文件路径中文件名包含中文  
  • 相关阅读:
    falsh读取网页数据
    IBATISNET中的lazyLoad
    Json.Net学习笔记(四) Json对象的读写
    Json.Net学习笔记(五) 自定义Json序列化特性
    Json.Net学习笔记(三) Json与Xml之间的转换
    将 GridView 中的内容导出到 Excel 中多个工作表(Sheet) 的方法
    jQuery–20个最新的jQuery效果.
    Json.Net学习笔记(七) 序列化集合
    Json.Net学习笔记(六) Json.Net中关于时间的序列化
    Json.Net 学习笔记(一)
  • 原文地址:https://www.cnblogs.com/lamp01/p/7793840.html
Copyright © 2011-2022 走看看