ThinkPHP3.2.3框架邮件发送功能图文实例详解

 更新时间:2019年04月23日 09:10:33   作者:豆芽七分熟  
这篇文章主要介绍了ThinkPHP3.2.3框架邮件发送功能,结合图文与实例形式详细分析了基于thinkPHP框架进行邮件发送的相关原理、配置及操作技巧,需要的朋友可以参考下

本文实例讲述了ThinkPHP3.2.3框架邮件发送功能。分享给大家供大家参考,具体如下:

背景

  • web 开发过程中,经常会用到邮件的发送功能,比如接收消费账单的提醒、亚马逊图书推荐的推送,或者网站不正常操作报警的邮件提示等。

  • 下面是一个在ThinkPHP 3.2.3 框架下集成 PHPMailer 使用的邮件发送功能实现过程,仅供参考,谢谢...

一、前期准备

1).首先对 STMP 的知识稍作了解

STMP 简介 《百度百科》

2).开启邮箱 STMP 服务

  • 以 163.com 邮箱为例,点击上方导航栏的“设置”,选择“POP3/SMTP/IMAP”进行下面的设置
  • 着重记下服务器地址(SMTP服务器:smtp.163.com)

  • 然后点击“客户端授权密码”进行权限设置,一般会进行短信的验证,并记录下自己设定的授权登录密码,后面的代码中需要用到。

二、代码实现

1).在公共配置文件中,进行数据配置

//邮件发送 配置
  'EMAIL_CONFIG' => array(
    'host' => 'smtp.163.com',
    'post' => '25',
    'username' => 'xxxxxxxxxx@163.com',//TODO 邮箱账号
    'password' => 'xxxxxxx',//TODO 客户端授权密码
    'sender' => '木头人',//TODO 发送人昵称
  ),

2).Email 核心代码如下

  • 注意 phpmailer 代码包所放的位置,以便后面的 Email 类的实例化
  • 此处代码主要是调用配置文件数据,无需变动,需要深入学习的可以自行阅读.

3).设计前端显示界面

  • 路径:./Application/M/Vieww/Email/index.html
  • 核心 js 代码如下:
function send() {
    var toUrl = "{:U('Email/send')}";
    var postData = $("#form-email").serialize();
    $.ajax({
      type: "POST",
      url: toUrl,
      data: postData,
      dataType: "json",
      success: function (res) {
        layer.msg(res.message);
      }
    });
  }

4).后台代码

  • 路径:‘.\Application\M\Controller\EmailController.class.php'
  • 调用邮件发送功能的核心代码为下图中红色框内三行。

三、功能实现效果

1).前端信息输入

  • 注意:邮箱输入错误或者内容填写太过随意,会造成发送失败,邮件可在发送者邮箱看到,提示“抱歉,您的邮件被退回来了...”。

邮件发送前端显示

2).接收邮箱的成功接收

  • 如果操作正常,上面输入的邮箱中会接收到对应的邮件,但是有的可能会在自己的“垃圾箱”中,注意查收.

成功进行邮件接收

三、附录

1).参考视频:http://coding.imooc.com/learn/list/85.html

2).源代码下载:https://github.com/JingYin007/zmPro

更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork框架入门教程》及《PHP模板技术总结》。

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

相关文章

  • php版微信自动获取收货地址api用法示例

    php版微信自动获取收货地址api用法示例

    这篇文章主要介绍了php版微信自动获取收货地址api用法,结合实例形式分析了php版微信API接口调用与使用技巧,需要的朋友可以参考下
    2016-09-09
  • PHP和MYSQL实现分页导航思路详解

    PHP和MYSQL实现分页导航思路详解

    这篇文章主要介绍了PHP和MYSQL实现分页导航思路详解,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2017-04-04
  • 详解PHP的Sodium加密扩展函数

    详解PHP的Sodium加密扩展函数

    Sodium 出现的目的也是为了代替Mcrypt这个原来的加密扩展。在 PHP7.2 之后,Mcrypt已经被移除,在PHP7.1时就已经被标记为过时。不过,Sodium扩展的应用也并不是很多,大部分情况下我们都会使用OpenSSL来进行加密操作,所以,我们这篇文章只做了解即可。
    2021-06-06
  • codeigniter中view通过循环显示数组数据的方法

    codeigniter中view通过循环显示数组数据的方法

    这篇文章主要介绍了codeigniter中view通过循环显示数组数据的方法,实例分析了codeigniter中view方法与数组遍历的技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-03-03
  • PHPCMS V9 添加二级导航的思路详解

    PHPCMS V9 添加二级导航的思路详解

    这篇文章主要介绍了PHPCMS V9 添加二级导航所遇到些问题,查询导航栏的信息时返回的$r[arrchildid]与自己想象的不符,文档上说是返回子栏目id但是却有些不同。下面小编通过分享本文给大家解答下
    2016-10-10
  • PHP获取网站中各文章的第一张图片的代码示例

    PHP获取网站中各文章的第一张图片的代码示例

    调取文章中的第一张图作为列表页缩略图是很流行的做法,WordPress中一般主题默认也是如此,那我们接下来就一起来看看PHP获取网站中各文章的第一张图片的代码示例
    2016-05-05
  • 详解PHP中websocket的使用方法

    详解PHP中websocket的使用方法

    这篇文章主要为大家详细介绍了PHP中websocket的使用方法,为大家进行了详细注解,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-09-09
  • 详解Laravel5.6 Passport实现Api接口认证

    详解Laravel5.6 Passport实现Api接口认证

    这篇文章主要介绍了详解Laravel5.6 Passport实现Api接口认证,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-07-07
  • 浅析Yii2 GridView实现下拉搜索教程

    浅析Yii2 GridView实现下拉搜索教程

    这篇文章主要介绍了浅析Yii2 GridView实现下拉搜索教程的相关资料,需要的朋友可以参考下
    2016-04-04
  • Thinkphp页面跳转设置跳转等待时间的操作

    Thinkphp页面跳转设置跳转等待时间的操作

    今天小编就为大家分享一篇Thinkphp页面跳转设置跳转等待时间的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-10-10

最新评论