ThinkPHP发送邮件以及PHPCMS之中如何引入第三方类库

时间:2023-02-01 08:52:48

引入类文件:PHPMailer.class.php

里面有个require下面这个类文件的,你需要写对路径哟  

    SMTP.class.php

在控制器之中写调用方法:

 1 function SendEmail($email,$title,$content)
 2 {
 3   import('Com.PHPMailer');
 4   $mail = new \PHPMailer();
 5   $title = "密码找回";
 6   $content = "亲爱的用户 ".$username.":您好!
 7       <br>
 8       <br>
 9         您收到这封这封电子邮件是因为您 (也可能是某人冒充您的名义) 申请了一个新的密码。假如这不是您本人所申请, 请不用理会这封电子邮件, 但是如果您持续收到这类的信件骚扰, 请您尽快联络管理员。
10       <br>";
11   $mail->IsSMTP();                           // tell the class to use SMTP
12   $mail->SMTPAuth   = true;                  // enable SMTP authentication
13   $mail->Port       = 25;                    // set the SMTP server port
14   $mail->Host       = "***.163.com"; // SMTP server   服务器地址
15   $mail->Username   = "***@163.com";     // SMTP server username
16   $mail->Password   = "tbamiabtpcgyurqo";            // SMTP server password 注意,这个是邮箱申请邮箱SMTP开启时候得到的密码,不是你的QQ邮箱或者什么163的登录密码
17   //$mail->IsSendmail();  // tell the class to use Sendmail
18   $mail->AddReplyTo("***@163.com","test网");  //回复人收件人别名 19   $mail->From       = "***@163.com";    //发件人 20   $mail->FromName   = "test";   //发件人别名 21   $mail->Subject  = $title;     // 邮件标题 22   $mail->AltBody    = $title; // optional, comment out and test
23   $mail->WordWrap   = 80; // set word wrap
24   $mail->MsgHTML($content);
25   $mail->IsHTML(true); // send as HTML
26   $mail->AddAddress($email);
27   if($mail->Send()){
28     return true;
29   }else{
30     return false;
31   }
32 }

 兄弟,给你看看效果图:

ThinkPHP发送邮件以及PHPCMS之中如何引入第三方类库

ThinkPHP发送邮件以及PHPCMS之中如何引入第三方类库

ThinkPHP发送邮件以及PHPCMS之中如何引入第三方类库

注意:在PHPCMS之中:

如何引用这两个类文件呢?如何获取错误信息呢?如何调用方法呢?

ThinkPHP发送邮件以及PHPCMS之中如何引入第三方类库

首先呢,错误信息在这儿,有日志记录;

ThinkPHP发送邮件以及PHPCMS之中如何引入第三方类库

类文件呢直接放在这儿,里面的不需要什么命名空间的,直接就是class{}反正上面的直接放在这儿就行了,只是在PHPMailer类文件里面有个引用下面smtp类文件的代码(就一句),需要用到PHPCMS提供的特定的引用方法;

1  protected function SmtpSend($header, $body) {
2     //require_once $this->PluginDir . 'class.smtp.php';
3     pc_base::load_sys_class('smtp');
4     $bad_rcpt = array();

ThinkPHP发送邮件以及PHPCMS之中如何引入第三方类库

这个是PHPCMS扩展方法的位置;(如何写上面有截图);

调用呢?在做欧式项目的时候是在表单提交成功之后添加邮件提醒:

所以呢,当然是找到表单提交成功后调用的方法啦,然后直接加上  functionname($str);这就够了

ThinkPHP发送邮件以及PHPCMS之中如何引入第三方类库

根据URL可以找到(模块-控制器-方法)

ThinkPHP发送邮件以及PHPCMS之中如何引入第三方类库

ThinkPHP发送邮件以及PHPCMS之中如何引入第三方类库

就是在这儿调用并且传参就可以了

还有如何检测是否存在类文件的方法呢?(用于检测引入类文件是否成功)

 SMTP\PHPMailer.php