威尼斯人线上娱乐

ThinkPHP使用PHPMailer发送邮件的例子,thinkphp使用phpmailer发送邮件的主意

11 8月 , 2019  

正文实例陈诉了thinkphp实现出殡和埋葬邮件密码找回功用的艺术。分享给大家供我们参照他事他说加以考察。具体贯彻格局如下:

本文所利用的是ThinkPHP 2.1版和 PHPMailer
5.1版。(前面一个建议你一贯从本博下载,因为大家不可能保险上面包车型的士代码在享有版本的PHPMailer中都能符合规律运维)

本文实例呈报了thinkphp使用phpmailer发送邮件的法子。分享给咱们供大家参谋。具体深入分析如下:

最近径直在用ThinkPHP框架开垦品种,
一般举办用户注册的时候都会发送一封验证邮件, 验证注册.
在本次做的CRM客户管理类别中须要用到约请注册这一个效应,
团队管理员注册之后可经过邮件约请团队的别样人士开始展览注册.
如何给集体人士发送邮件, 很盛行的贰个邮件发送类库正是PHPMailer.

首先下载mail.class.php类文件,配置文件中定义下列参数:

上边是具体步骤:

phpmailer发送邮件是php开发者首推的三个邮件发送插件了,上边笔者来介绍怎么集成phpmailer到thinkphp框架了,感兴趣的心上人能够参照一下。

  1. 下载PHPmailer并解压到ThinkPHP\Extend\Vendor文件夹下

  2. 用ThinkPHP自带的Vendor方法载入第三方类库

  3. 安排相关参数.

复制代码 代码如下:

第一步、添加PHPMailer类库

phpmailer发送邮件成效很强劲,前几天确实的经验一下,这里先轻松说一下配置,本人是在thinkphp中接纳的.

4.为了有助于随便调用, 在common.php创立一个出殡和埋葬邮件的函数,
之后就足以调用此函数发送邮件了

‘MAIL_ADDRESS’ => ‘ivzhu@qq.com’, // 邮箱地址 
‘MAIL_SMTP’ => ‘smtp.qq.com’, // 邮箱SMTP服务器 
‘MAIL_LOGINNAME’ => ‘mail@qq.com’, // 邮箱登陆帐号 
‘MAIL_PASSWO奥德赛D’ => ‘123456’, // 邮箱密码 
‘MAIL_CHARSET’ => ‘UTF-8’, // 编码 
‘MAIL_AUTH’ => true, // 邮箱认证 
‘MAIL_HTML’ => true, // true HTML格式 false TXT格式

点击这里下载
将下载后的公文解压,将PHPMail目录移动至ThinkPHP目录中的Vendor内。(请确定保障class.phpmailer.php文件就在ThinkPHPVendorPHPMailerclass.phpmailer.php)

配置步骤:

/**
 * 邮件发送
 */
function sendMail(){
    // 载入邮件发送类库
    Vendor(‘PHPMailer.PHPMailerAutoload’);

在tp项目org中归入mail.class.php,使用时候引进 import(‘@.OOdysseyG.Mail’);

第二步、增多发送邮件函数

1.后台配置发送邮件类,地点admin/common/common.php中,代码如下:

    $mail = new PHPMailer;

ThinkPHP使用PHPMailer发送邮件的例子,thinkphp使用phpmailer发送邮件的主意。复制代码 代码如下:

在类型目录中的Common文件夹中的common.php文件(如果未有请创造)加多如下代码:

复制代码 代码如下:

    $mail->isSMTP();        //设置PHPMailer使用SMTP服务器发送Email
    $mail->Host = ‘smtp.163.com’;   //钦赐SMTP服务器
可以是smtp.126.com, gmail, qq等服务器 自行查询
    $mail->SMTPAuth = true;
    $mail->CharSet=’UTF-8′;     //设置字符集 幸免乱码
    $mail->Username = ‘username@163.com’;  //发赠送别人的信箱账户
    $mail->PassWord =
‘xxxxxxxxxx’;   //发赠给别人的信箱密码
    $mail->Port = 25;   //SMTP服务器端口

public function index(){ 
    import(‘@.ORG.Mail’); 
   
//SendMail(‘admin@waikucms.com’,’邮件标题’,’邮件正文’,’歪酷CMS管理员’); 
//解释下参数: 参数1—对象邮箱,
参数2—-邮件标题,参数三–邮件正文,参数四—发件人名称; 
    $content=md5(time()); 
    session($content,$content); 
   
$content=C(‘localurl’).’/index.php’.U(‘Mail/index’,array(‘res’=>$content)); 
    if(SendMail(‘aa@qq.com’,’nihao邮件标题’,$content,’unphp’)){ 
    echo ‘chengong’; 
    }else{ 
    echo ‘shibai’; 
    } 
$this->display(); 
}

复制代码 代码如下:

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)); 

    $mail->From = ‘user@admin.com’;            //发件人邮箱地址
    $mail->FromName = ‘在中途’;                //发件人名称
    $mail->addAddress(‘guest@test.com’);      // 收件人邮箱地址
此处能够发送七个

另贰个页面接受参数res:

<?php
/**********
 * 发送邮件 *
 **********/
function SendMail($address,$title,$message)
{
    vendor(‘PHPMailer.class#PHPMailer’);
    $mail=new PHPMailer();
    // 设置PHPMailer使用SMTP服务器发送Email
    $mail->IsSMTP();
    // 设置邮件的字符编码,若不点名,则为’UTF-8′
    $mail->CharSet=’UTF-8′;
    // 增多收件人地址,能够一再选取来增多两个收件人
    $mail->AddAddress($address);
    // 设置邮件正文
    $mail->Body=$message;
    // 设置邮件头的From字段。
    $mail->From=C(‘MAIL_ADDRESS’);
    // 设置发件人名字
    $mail->FromName=’LilyRecruit’;
    // 设置邮件标题
    $mail->Subject=$title;
    // 设置SMTP服务器。
    $mail->Host=C(‘MAIL_SMTP’);
    // 设置为“必要证实”
    $mail->SMTPAuth=true;
    // 设置用户名和密码。
    $mail->Username=C(‘MAIL_LOGINNAME’);
    $mail->Password=C(‘MAIL_PASSWORD’);
    // 发送邮件。
    return($mail->Send());
}
?>

        return $mail->Send()? true:false; 
}

    $mail->WordWrap = 50;                                 //
换行字符数
    $mail->isHTML(true);                                  //
设置邮件格式为HTML

复制代码 代码如下:

其三步、配置邮箱音信

2:配置文件中安排参数,代码如下:

    $mail->Subject = ‘阿德莱德XXX’;       //邮件标题
    $mail->Body    =
‘尊崇的读书人/女士:<br/>特别抱歉,您接受到这封邮件是因你的基友特邀你参与我们的CRM系统体验其中,请点击以下链接注册账户<a
href=####>######</a><br/>如你未有相关计划,请忽略’;

public function index(){ 
header(“Content-type: text/html; charset=utf-8”);  
$res=I(‘res’); 
echo $res; 
if(session($res)==$res){ 
echo ‘密码找回成功’; 
session($res,null); 
}else{ 
echo ‘已透过期’; 

}

编纂Conf目录下的config.php,在return array加多如下内容

复制代码 代码如下:

    if(!$mail->send()) {
        echo ‘邮件发送失败.’;
        echo ‘错误新闻: ‘ . $mail->ErrorInfo;
    } else {
        echo ‘邮件发送成功’;
    }
}

期待本文所述对大家的ThinkPHP框架程序设计有着支持。

复制代码 代码如下:

/*邮件设置*/ 
    ‘EMAIL_SET’=>array( 
       ‘Host’=> “smtp.163.com”, 
       ‘Port’=>’25’, 
       ’email_user’=>’liuying’, 
       ’email_pwd’=>’123456′, 
       ’email’=>’jb51@163.com’, 
       ’email_name’=>’jb51脚本之家’, 
)

概念好函数之后,倘使想发送邮件,直接调用 sendMail();

你恐怕感兴趣的稿子:

  • thinkphp完结163、QQ邮箱收发邮件的办法
  • ThinkPHP3.2利用QQ邮箱/163邮箱通过PHPMailer发送邮件的秘籍
  • thinkphp5使用bootstrapvalidator举办异步验证邮箱的躬行实践
  • ThinkPHP利用PHPMailer完成邮件发送完结代码
  • thinkphp使用phpmailer发送邮件的办法
  • 详解thinkphp5+swoole实现异步邮件群发(SMTP格局)
  • ThinkPHP发送邮件示例代码
  • ThinkPHP5邮件发送服务封装(可发附属类小部件)
  • PHPMailer
    ThinkPHP完结全自动发送邮件成效
  • ThinkPHP框架完成的信箱激活功用示例

    ‘MAIL_ADDRESS’=>’xxx@126.com’, // 邮箱地址
    ‘MAIL_SMTP’=>’smtp.126.com’, // 邮箱SMTP服务器
    ‘MAIL_LOGINNAME’=>’xxx’, // 邮箱登入帐号
    ‘MAIL_PASSWO帕杰罗D’=>’xxx’, // 邮箱密码

3.测验发送代码,代码如下:

可把发送内容, 发送标题, 收件人一体设置为变量, 比如: sendMail($body,
$title, $recipient)  收件人可为数组的格局, 在函数里面循环一下就消除啦!! 
SMTP服务器以及发件人的某个陈设能够写到Conf\config.php文件中,
直接C()方法调用就可以.

在那之中的邮箱登入帐号大概供给包含@后边的剧情,请自行尝试^_^
第四步、在Action中发送邮件
由于ThinkPHP会自动加载common.php中的函数,所以在急需发送邮件的时候,只供给接纳如下代码就能够。
SendMail(“xxx@xxx.com”,”邮件标题”,”邮件正文”);

复制代码 代码如下:

方法二,

至此,本课程已经完毕。撒花~~~

sendmail(‘11234@126.com’,’您好’,’这里是内容’);

先是步 先下载PHPMailer.class.php压缩包(本文上边有附属类小部件下载)

款待成功安排的同校SendMail(“dreamrunner@foxmail.com”,”小编也会用ThinkPHP发送邮件啦”,”哇啦哇啦~~”);

梦想本文所述对我们的PHP程序设计有所扶助。

解压后会有如下的两个文本:

威尼斯人线上娱乐,还会有部分注脚

你也许感兴趣的稿子:

  • thinkphp实现163、QQ邮箱收发邮件的方法
  • ThinkPHP3.2利用QQ邮箱/163信箱通过PHPMailer发送邮件的点子
  • thinkphp5使用bootstrapvalidator进行异步验证邮箱的演示
  • thinkphp达成发送邮件密码找回作用实例
  • ThinkPHP利用PHPMailer完成邮件发送完结代码
  • 详解thinkphp5+swoole实现异步邮件群发(SMTP情势)
  • ThinkPHP发送邮件示例代码
  • ThinkPHP5邮件发送服务封装(可发附属类小部件)
  • PHPMailer
    ThinkPHP落成活动发送邮件成效
  • ThinkPHP框架完成的信箱激活功效示例

1.class.pop3.php
2.class.smtp.php
3.PHPMailer.class.php
PHPMailer.class.php这几个文件正是骨干的文件,把那些文件放到ThinkPHP的恢弘包下路线如\下:ThinkPHP\Extend\Library

假使邮件正文中须求换行如何做吧?其实,最简便的格局是——

第二步 在ThinkPHP,common文件中新建贰个common.php文件写入如下代码:

SendMail(“xxx@xxx.com”,”邮件标题”,”邮件正文
自己换行啦~~!”);

functionSendMail($address,$title,$message)
{
import(‘ORG.Net.PHPMailer’);
$mail=newPHPMailer();
// 设置PHPMailer使用SMTP服务器发送Email
$mail->IsSMTP();
// 设置邮件的字符编码,若不钦点,则为’UTF-8′
$mail->CharSet=’UTF-8′;
// 加多收件人地址,可以屡次利用来增多多少个收件人
$mail->AddAddress($address);
// 设置邮件正文
$mail->Body=$message;
// 设置邮件头的From字段。
$mail->From=C(‘MAIL_ADDRESS’);
// 设置发件人名字
$mail->FromName=’zyimm’;
// 设置邮件标题
$mail->Subject=$title;
// 设置SMTP服务器。
$mail->Host=C(‘MAIL_SMTP’);
// 设置为“须求说明”
$mail->SMTPAuth=true;
// 设置用户名和密码。
$mail->Username=C(‘MAIL_LOGINNAME’);
$mail->Password=C(‘MAIL_PASSWORD’);
// 发送邮件。
return($mail->Send());
其三步 在ThinkPHP,conf.php文件写入如下代码:

QQ邮箱(含foxmail)和乐乎的126、163都测验成功。因为近年来作客GMail相比费力,所以未有测量试验。传闻GMail须要必须利用SSL,有那上边须求的同学自行谷歌(Google)百度PHPMailer的措施。

在意:以下是的本身要好QQ邮箱的测量检验的,每种邮箱参数差异,具体以邮箱为准,qq邮箱的stmp须要自身到邮箱开启的。

您恐怕感兴趣的稿子:

  • thinkphp完结163、QQ邮箱收发邮件的艺术
  • ThinkPHP3.2利用QQ邮箱/163信箱通过PHPMailer发送邮件的方法
  • thinkphp5使用bootstrapvalidator举行异步验证邮箱的示范
  • thinkphp完成出殡和埋葬邮件密码找回成效实例
  • thinkphp使用phpmailer发送邮件的措施
  • 详解thinkphp5+swoole完成异步邮件群发(SMTP格局)
  • ThinkPHP发送邮件示例代码
  • ThinkPHP5邮件发送服务封装(可发附属类小部件)
  • PHPMailer
    ThinkPHP达成活动发送邮件功效
  • ThinkPHP框架实现的信箱激活功效示例

returnarray(
//’配置项’=>’配置值’
‘MAIL_ADDRESS’=>’799783009@qq.com’, // 邮箱地址 
‘MAIL_LOGINNAME’=>’799783009@qq.com’, // 邮箱登入帐号
‘MAIL_SMTP’=>’smtp.qq.com’, // 邮箱SMTP服务器
‘MAIL_PASSWORD’=>’******’, // 邮箱密码
‘SHOW_PAGE_TRACE’=>true,
);

第四步 剩下使用了。在ThinkPHP,IndexAction.class.php文件写入如下代码:

// 本类由系统自动生成,仅供测验用途
classIndexAction extendsAction {
publicfunctionindex(){
if(!empty($_POST[‘title’]) && !empty($_POST[‘content’])){
if(SendMail(“597417106@qq.com”,$_POST[’tile’],$_POST[‘content’]))
echo’发送成功!’;
else
echo’发送战败’;
}
$this->assign(‘title’,’测验标题’);
$this->display();
}
}
好了,就那样简单的

方法二算是一个标准的方法了,全体都放到thinkphp类中了,小编推荐使用第三种方案.


相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图