zoukankan      html  css  js  c++  java
  • PHP SMTP邮件发送(可加附件)

    <?php
    
    /**
     * @param $address mixed 收件人  多个收件人/或需要设置收件人昵称时为数组 array($address1,$address1)/array(array('address'=>$address1,'nickname'=>$nickname1),array('address'=>$address2,'nickname'=>$nickname2))
     * @param $subject string 邮件主题
     * @param $body    string 邮件内容
     * @param  $file   string 附件
     * @return bool|string   发送成功返回true 反之返回报错信息
     * @throws Exception
     */
    function send_mail_by_smtp($address, $subject, $body, $file = '')
    {
      require('./PHPMailer-master/Exception.php');
      require('./PHPMailer-master/PHPMailer.php');
      require('./PHPMailer-master/SMTP.php');
    
      //date_default_timezone_set("Asia/Shanghai");//设定时区东八区
    
      $mail = new PHPMailer();
    
      //Server settings
      $mail->SMTPDebug = 2;
      $mail->isSMTP();                                      // 使用SMTP方式发送
      $mail->Host = 'smtp.126.com';                         // SMTP邮箱域名
      $mail->SMTPAuth = true;                               // 启用SMTP验证功能
      $mail->Username = "*****@126.com";                    // 邮箱用户名(完整email地址)
      $mail->Password = "*****";                            // smtp授权码,非邮箱登录密码
      $mail->Port = 25;
      $mail->CharSet = "utf-8";                             //设置字符集编码 "GB2312"
    
      // 设置发件人信息,显示为  你看我那里像好人(xxxx@126.com)
      $mail->setFrom($mail->Username, '你看我那里像好人');
    
      //设置收件人 参数1为收件人邮箱 参数2为该收件人设置的昵称  添加多个收件人 多次调用即可
      //$mail->addAddress('********@163.com', '你看我那里像好人');
    
      if (is_array($address)) {
        foreach ($address as $item) {
          if (is_array($item)) {
            $mail->addAddress($item['address'], $item['nickname']);
          } else {
            $mail->addAddress($item);
          }
        }
      } else {
        $mail->addAddress($address, 'adsf');
      }
    
    
      //设置回复人 参数1为回复人邮箱 参数2为该回复人设置的昵称
      //$mail->addReplyTo('*****@126.com', 'Information');
    
      if ($file !== '') $mail->AddAttachment($file); // 添加附件
    
      $mail->isHTML(true);    //邮件正文是否为html编码 true或false
      $mail->Subject = $subject;     //邮件主题
      $mail->Body = $body;           //邮件正文 若isHTML设置成了true,则可以是完整的html字符串 如:使用file_get_contents函数读取的html文件
      //$mail->AltBody = 'This is the body in plain text for non-HTML mail clients';  //附加信息,可以省略
    
      return $mail->Send() ? true : 'ErrorInfo:' . $mail->ErrorInfo;
    }
    
    $path = '.wpic907.jpg';
    $ret = send_mail_by_smtp('*******@163.com', 'PHPMailer邮件标题', 'PHPMailer邮件内容', $path);
    

      

    下载:https://pan.baidu.com/s/1IakOOvmfltodm6w_taDcQg

  • 相关阅读:
    python操作csv,对比两个csv文件某列值
    监控端口和僵尸进程脚本
    openldap创建只读账号
    shell 判断文件内容是否改变
    golang调用shell命令标准输出阻塞管道
    fexpect 源码
    python pexpect 免交互自动恢复gitlab数据
    consul client agent 本地读取key value
    pip 安装三方库报超时
    微信小程序滚动tab的实现
  • 原文地址:https://www.cnblogs.com/PHPcoder404/p/9687656.html
Copyright © 2011-2022 走看看