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


Posted in PHP onApril 23, 2019

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

背景

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

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

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

一、前期准备

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

ThinkPHP3.2.3框架邮件发送功能图文实例详解 STMP 简介 《百度百科》

2).开启邮箱 STMP 服务

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

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

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

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

二、代码实现

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

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

2).Email 核心代码如下

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

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

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'
  • 调用邮件发送功能的核心代码为下图中红色框内三行。

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

三、功能实现效果

1).前端信息输入

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

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

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

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

ThinkPHP3.2.3框架邮件发送功能图文实例详解 成功进行邮件接收

三、附录

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

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

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

PHP 相关文章推荐
PHP数据缓存技术
Feb 14 PHP
追求程序速度,而不是编程的速度
Apr 23 PHP
ThinkPHP中redirect用法分析
Dec 05 PHP
WAMP环境中扩展oracle函数库(oci)
Jun 26 PHP
10个php函数实用却不常见
Oct 13 PHP
PHP实现操作redis的封装类完整实例
Nov 14 PHP
Yii中实现处理前后台登录的新方法
Dec 28 PHP
PHP检测用户是否关闭浏览器的方法
Feb 14 PHP
PHP批量删除jQuery操作
Jul 23 PHP
PHP实现负载均衡下的session共用功能
Apr 17 PHP
PHP+mysql实现的三级联动菜单功能示例
Feb 15 PHP
thinkphp5.1框架容器与依赖注入实例分析
Jul 23 PHP
PHP信号处理机制的操作代码讲解
Apr 19 #PHP
CentOS7编译安装php7.1的教程详解
Apr 18 #PHP
浅析PHP 中move_uploaded_file 上传中文文件名失败
Apr 17 #PHP
Laravel框架集成UEditor编辑器的方法图文与实例详解
Apr 17 #PHP
Laravel5框架自定义错误页面配置操作示例
Apr 17 #PHP
JS(jQuery)实现聊天接收到消息语言自动提醒功能详解【提示“您有新的消息请注意查收”】
Apr 16 #PHP
CI框架教程之优化验证码机制详解【验证码辅助函数】
Apr 16 #PHP
You might like
php+mysql 实现身份验证代码
2010/03/24 PHP
PHP编程函数安全篇
2013/01/08 PHP
laravel 之 Eloquent 模型修改器和序列化示例
2019/10/17 PHP
宝塔面板在NGINX环境中TP5.1如何运行?
2021/03/09 PHP
一个简单的javascript类定义例子
2009/09/12 Javascript
div层的移动及性能优化
2010/11/16 Javascript
jquery控制select的text/value值为选中状态
2014/06/03 Javascript
使用jQuery实现星级评分代码分享
2014/12/09 Javascript
js使用DOM操作实现简单留言板的方法
2015/04/10 Javascript
javascript学习总结之js使用技巧
2015/09/02 Javascript
js操作cookie保存浏览记录的方法
2015/12/25 Javascript
使用jQuery Rotare实现微信大转盘抽奖功能
2016/06/20 Javascript
JS中innerHTML和pasteHTML的区别实例分析
2016/06/22 Javascript
前端图片懒加载(lazyload)的实现方法(提高用户体验)
2017/08/21 Javascript
Mac 安装 nodejs方法(图文详细步骤)
2017/10/30 NodeJs
通过fastclick源码分析彻底解决tap“点透”
2017/12/24 Javascript
vue+axios 前端实现登录拦截的两种方式(路由拦截、http拦截)
2018/10/24 Javascript
js动态生成表格(节点操作)
2021/01/12 Javascript
[36:33]完美世界DOTA2联赛PWL S2 LBZS vs Forest 第二场 11.29
2020/12/02 DOTA
使用Python的Twisted框架实现一个简单的服务器
2015/04/16 Python
Python基于回溯法子集树模板实现8皇后问题
2017/09/01 Python
python tensorflow基于cnn实现手写数字识别
2018/01/01 Python
Python中的heapq模块源码详析
2019/01/08 Python
如何使用Python实现斐波那契数列
2019/07/02 Python
django 微信网页授权认证api的步骤详解
2019/07/30 Python
利用python绘制正态分布曲线
2021/01/04 Python
HTML5的结构和语义(1):前言
2008/10/17 HTML / CSS
越南综合购物网站:Lazada越南
2019/06/10 全球购物
物业管理专业个人的自我评价
2013/11/19 职场文书
经济学博士求职自荐信范文
2013/11/23 职场文书
妈妈的账单教学反思
2014/02/06 职场文书
励志演讲稿范文
2014/04/29 职场文书
2014年校务公开工作总结
2014/12/18 职场文书
工程项目经理岗位职责
2015/02/02 职场文书
2016年优秀团员事迹材料
2016/02/25 职场文书
导游词之贵州织金洞
2019/10/12 职场文书