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

 更新时间:2018年06月10日 13:23:38   作者:wenjayLiu  
这篇文章主要为大家详细介绍了PHPMailer ThinkPHP实现自动发送邮件功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了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;
  }
}

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

相关文章

  • Laravel框架中composer自动加载的实现分析

    Laravel框架中composer自动加载的实现分析

    Laravel作为在国内国外都颇为流行的PHP框架,风格优雅,其拥有自己的一些特点。下面这篇文章主要给大家介绍了关于Laravel框架中composer自动加载实现的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下。
    2017-12-12
  • ThinkPHP 3.2.2实现事务操作的方法

    ThinkPHP 3.2.2实现事务操作的方法

    这篇文章主要介绍了ThinkPHP 3.2.2实现事务操作的方法,简单分析了thinkPHP中事务的启动、提交、回滚等操作方法并给出了完整的事务提交与回滚操作实例,需要的朋友可以参考下
    2017-05-05
  • thinkphp配置连接数据库技巧

    thinkphp配置连接数据库技巧

    这篇文章主要介绍了thinkphp配置连接数据库技巧,实例讲述了ThinkPHP入口同目录下配置数据库及控制器另外连接数据库的技巧,需要的朋友可以参考下
    2014-12-12
  • Laravel 6.2 中添加了可调用容器对象的方法

    Laravel 6.2 中添加了可调用容器对象的方法

    Laravel小组上周发布了v6.2.0 版本,接下来通过本文给大家分享Laravel 6.2 中添加了可调用容器对象的方法,需要的朋友可以参考下
    2019-10-10
  • laravel yajra插件 datatable的使用详解

    laravel yajra插件 datatable的使用详解

    这篇文章主要介绍了laravel yajra插件 datatable的使用详解,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-01-01
  • PHP CodeIgniter分页实例及多条件查询解决方案(推荐)

    PHP CodeIgniter分页实例及多条件查询解决方案(推荐)

    这篇文章主要介绍了PHP CodeIgniter分页实例及多条件查询的思路详解,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2017-05-05
  • Codeigniter实现多文件上传并创建多个缩略图

    Codeigniter实现多文件上传并创建多个缩略图

    这篇文章主要介绍了Codeigniter实现多文件上传并创建多个缩略图,需要的朋友可以参考下
    2014-06-06
  • Yii2实现中国省市区三级联动实例

    Yii2实现中国省市区三级联动实例

    本篇文章主要介绍了Yii2实现中国省市区三级联动实例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-02-02
  • 让CodeIgniter数据库缓存自动过期的处理的方法

    让CodeIgniter数据库缓存自动过期的处理的方法

    按官方的说法,缓存设置后永不过期,除非你调用方法主动删除。这篇文章主要介绍了CodeIgniter数据库缓存自动过期的处理,需要的朋友可以参考下
    2014-06-06
  • 深入解析php之apc

    深入解析php之apc

    本篇文章是对php中apc的使用进行了详细的分析介绍,需要的朋友参考下
    2013-05-05

最新评论