欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

PHPMailer ThinkPHP实现自动发送邮件功能

程序员文章站 2023-10-17 23:09:32
本文实例为大家分享了phpmailer thinkphp自动发送邮件的具体代码,供大家参考,具体内容如下 1.下载phpmailer类包,放入thinkphp的vendo...

本文实例为大家分享了phpmailer thinkphp自动发送邮件的具体代码,供大家参考,具体内容如下

1.下载phpmailer类包,放入thinkphp的vendor目录,这是thinkphp的第三方类库目录

2.然后在项目目录下common文件夹下,在common.php(thinkphp中此文件会自动被引用,如果没有,新建一个common.php)中新增调用发送邮件的函数:

/********************************email**********************************/

//邮发方法的定义
function s_mail($sendto, $title, $response) {
  //导入函数包的类class.phpmailer.php
  vendor ( "phpmailer.class#phpmailer" );

  // 参数说明(发送到的邮箱地址, 邮件主题, 邮件内容, 接受方的的姓名)
  //填写要发送给管理员的邮件接受地址,请改为正确的地址
  $sendto_mail = $sendto;
  //邮件主题
  $subject = $title;
  //意见内容
  $body = $response;
  //发送邮件
  smtp_mail ( $sendto_mail, $subject, $body );

}

//下面定义一个发送邮件的函数,已经测试通过。
//$sendto_email:邮件发送地址
//$subject:邮件主题
//$body:邮件正文内容
//$sendto_name邮件接受方的姓名,发送方起的名字。一般可省。
function smtp_mail($sendto_email, $subject = null, $body = null, $sendto_name = null) {
  //新建一个邮件发送类对象
  $mail = new phpmailer ();
  // send via smtp
  $mail->issmtp ();
  // smtp 邮件服务器地址,这里需要替换为发送邮件的邮箱所在的邮件服务器地址
  $mail->host = "smtp.qq.com";
  //邮件服务器验证开
  $mail->smtpauth = true;
  // smtp服务器上此邮箱的用户名,有的只需要@前面的部分,有的需要全名。请替换为正确的邮箱用户名
  $mail->username = "xxxx@qq.com";
  // smtp服务器上该邮箱的密码,请替换为正确的密码
  $mail->password = "xxxx";
  // smtp服务器上发送此邮件的邮箱,请替换为正确的邮箱 ,与$mail->username 的值是对应的。
  $mail->from = "xxxx@qq.com";
  // 真实发件人的姓名等信息,这里根据需要填写
  $mail->fromname = "[".date('y-m-d h:i:s',time ())."]需求系统邮件";
  // 这里指定字符集!
  $mail->charset = "utf-8";
  $mail->encoding = base64;
  // 收件人邮箱和姓名
  $mail->addaddress ( $sendto_email, $sendto_name );
  //这一项根据需要而设
  $mail->addreplyto ( 'xxxx@qq.com', "admin" );
  // set word wrap
  //$mail->wordwrap = 50;
  // 附件处理
  //$mail->addattachment("/var/tmp/file.tar.gz");
  //$mail->addattachment("/tmp/image.jpg", "new.jpg");
  // 发送 html邮件
  $mail->ishtml ( false );
  // 邮件主题
  $mail->subject = $subject;
  // 邮件内容
  $mail->body = $body;
  $mail->altbody = "text/html";

  if (! $mail->send ()) {
    return 0;
  } else {
    return 1;
  }
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。