thinkphp中怎么使用phpmailer发送邮件

作者:袖梨 2022-06-24


phpmailer发送邮件功能很强大,今天真正的体验一下,简单说一下配置,本人是在thinkphp中是用的

配置步骤:

1.后台配置发送邮件类,位置admin/common/common.php

 代码如下 复制代码

function sendmail($tomail,$title,$content)
{

/*邮件设置信息*/
        $email_set = C('EMAIL_SET');

        Vendor('phpmailer.class#phpmailer');
        Vendor("phpmailer.class#smtp"); //可选,否则会在class.phpmailer.php中包含
       
        $mail = new PHPMailer(true); //实例化PHPMailer类,true表示出现错误时抛出异常
       
        $mail->IsSMTP(); // 使用SMTP

          $mail->CharSet ="UTF-8";//设定邮件编码
          $mail->Host       = $email_set['Host']; // SMTP server
          $mail->SMTPDebug  = 1;                     // 启用SMTP调试 1 = errors  2 =  messages
          $mail->SMTPAuth   = true;                  // 服务器需要验证
          $mail->Port       = $email_set['port'];                    // 设置端口
         // $mail->SMTPSecure = "ssl";    
            /*
            $mail->SMTPSecure = "ssl";                
            $mail->Host       = "smtp.gmail.com";    
            $mail->Port       = 465;                 
            */
       
          $mail->Username   = $email_set['email_user']; //SMTP服务器的用户帐号
          $mail->Password   = $email_set['email_pwd'];       //SMTP服务器的用户密码
          $mail->AddReplyTo($email_set['email'],$email_set['email_name']); //收件人回复时回复到此邮箱,可以多次执行该方法
          if (is_array($tomail)){
              foreach ($tomail as $m){
                   $mail->AddAddress($m, 'user');
              }
          }else{
              $mail->AddAddress($tomail, 'user');
          }
        
          $mail->SetFrom($email_set['email'],$email_set['email_name']);
        // $mail->AddAttachment('./img/phpmailer.gif');      // 添加附件,如果有多个附件则重复执行该方法
          $mail->Subject = $title;
       
          //以下是邮件内容相关
          $mail->Body = $content;
          $mail->IsHTML(true);
       
          //$body = file_get_contents('tpl.html'); //获取html网页内容
         // $mail->MsgHTML(eregi_replace("[]",'',$body));
       
       
        return $mail->Send()? true:false;

2:配置文件中配置参数:

 代码如下 复制代码

/*邮件设置*/
    'EMAIL_SET'=>array(
       'Host'=> "smtp.163.com",
       'Port'=>'25',
       'email_user'=>'liuying',
       'email_pwd'=>'123456',
       'email'=>'[email protected]',
       'email_name'=>'86市场网',
    ),

3.测试发送代码:

 代码如下 复制代码

sendmail(’[email protected]‘,‘您好’,‘我是内容’);

相关文章

精彩推荐