thinkphp使用phpmailer发送邮件的方法

yipeiwu_com7年前PHP代码库

本文实例讲述了thinkphp使用phpmailer发送邮件的方法。分享给大家供大家参考。具体分析如下:

phpmailer发送邮件是php开发者首选的一个邮件发送插件了,下面我来介绍怎么集成phpmailer到thinkphp框架了,感兴趣的朋友可以参考一下。

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'=>'jb51@163.com', 
       'email_name'=>'jb51【宜配屋www.yipeiwu.com】', 
)

3.测试发送代码,代码如下:
复制代码 代码如下:
sendmail('11234@126.com','您好','这里是内容');

希望本文所述对大家的PHP程序设计有所帮助。

相关文章

php判断文件上传图片格式的实例详解

php判断文件上传图片格式的实例详解 判断文件图片类型, $type = $_FILES['image']['tmp_name'];//文件名 //$type = $this...

php中如何执行linux命令详解

php中如何执行linux命令详解

前言 本文主要给大家介绍了关于在php中如何执行linux命令的相关内容,下面话不多说了,来一起看看详细的介绍吧 php如何执行某个命令 ,官方手册在这里 我们先从shell_exec来...

PHP实现过滤各种HTML标签

首先分享一些比较常见的 $str=preg_replace("/<s*imgs+[^>]*?srcs*=s*('|")(.*?)\1[^>]*...

两款万能的php分页类

本文为大家分享个超级好用、万能的php分页类,具体的实现代码如下 第一款php分页类 <?php /* * To change this template, choo...

php变量与JS变量实现不通过跳转直接交互的方法

本文实例讲述了php变量与JS变量实现不通过跳转直接交互的方法。分享给大家供大家参考,具体如下: 大家都知道如果JS变量要获取后台传来的php变量可以这么写: <?ph...