PHPMailer 发邮件

浏览:663 发布日期:2018/06/27 分类:ThinkPHP5专区 关键字: phpMailer
以qq邮箱 thinkphp5 框架为例
步骤1.去qq邮箱获取SMTP授权码
步骤2.去PHP.ini 开启扩展 php_openssl.dll 和 php_sockets.dll
步骤3.下载PHPMailer 放到默认与application同级的extend中
步骤4.去application 下的common.php 中加入如下代码
步骤5.在框架的任意位置 以这样的方式调用sendEmail([['user_email'=>'11111@qq.com','content'=>'小台台又来了'],['user_email'=>'22222@qq.com','content'=>'去拿外卖了']]);<?php
// 应用公共文件application/common.php
use \PHPMailer\PHPMailer;

/**
* 发送邮箱
* @param type $data 邮箱队列数据 包含邮箱地址 内容
*/
function sendEmail($data = []) {

  $mail = new PHPMailer(); //实例化

  $mail->IsSMTP(); // 启用SMTP
  $mail->Host = 'smtp.qq.com'; //SMTP服务器 以qq邮箱为例子 
  $mail->Port = 465;  //邮件发送端口
  $mail->SMTPAuth = true;  //启用SMTP认证
  $mail->SMTPSecure = "ssl";   // 设置安全验证方式为ssl

  $mail->CharSet = "UTF-8"; //字符集
  $mail->Encoding = "base64"; //编码方式

  $mail->Username = '11111@qq.com';  //你的邮箱 
  $mail->Password = 'xxxxxx';  //这里是你邮箱的SMTP授权码,不用瞎几把乱写
  $mail->Subject = '小台台测试'; //邮件标题  

  $mail->From = '11111@qq.com';  //发件人地址(也就是你的邮箱)
  $mail->FromName = '我是小台台';  //发件人姓名

  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;// 输出错误信息  
      }
    }
  }           
}
最佳答案
评论( 相关
后面还有条评论,点击查看>>