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技术开发技巧分享
Mar 23 PHP
PHP安全技术之 实现php基本安全
Sep 04 PHP
PHP UTF8中文字符截断函数代码
Sep 11 PHP
PHP中通过HTTP_USER_AGENT判断是否为手机移动终端的函数代码
Feb 14 PHP
php对数组排序代码分享
Feb 24 PHP
thinkphp实现发送邮件密码找回功能实例
Dec 01 PHP
php递归法读取目录及文件的方法
Jan 30 PHP
php实现修改新闻时删除图片的方法
May 12 PHP
PHP图像处理类库及演示分享
May 17 PHP
Yii2中使用join、joinwith多表关联查询
Jun 30 PHP
yii通过小物件生成view的方法
Oct 08 PHP
Laravel中的chunk组块结果集处理与注意问题
Aug 15 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入库和出库
2013/06/25 PHP
ThinkPHP基于PHPExcel导入Excel文件的方法
2014/10/15 PHP
PHP实现通过URL提取根域名
2016/03/31 PHP
深入理解PHP原理之执行周期分析
2016/06/01 PHP
PHP+JQuery+Ajax实现分页方法详解
2016/08/06 PHP
PHPWind9.0手动屏蔽验证码解决后台关闭验证码但是依然显示的问题
2016/08/12 PHP
Laravel框架实现的上传图片到七牛功能详解
2019/09/06 PHP
Laravel5.5 实现后台管理登录的方法(自定义用户表登录)
2019/09/30 PHP
jquery.cookie.js 操作cookie实现记住密码功能的实现代码
2011/04/27 Javascript
js修改table中Td的值(定义td的双击事件)
2013/01/10 Javascript
判断一个变量是数组Array类型的方法
2013/09/16 Javascript
jquery 操作两个select实现值之间的互相传递
2014/03/07 Javascript
解决jquery版本冲突的有效方法
2014/09/02 Javascript
jquery中post方法用法实例
2014/10/21 Javascript
让html页面不缓存js的实现方法
2014/10/31 Javascript
解析javascript中鼠标滚轮事件
2015/05/26 Javascript
jquery左右全屏大尺寸多图滑动效果代码分享
2015/08/28 Javascript
JS+CSS实现TreeMenu二级树形菜单完整实例
2015/09/18 Javascript
基于js文件加载优化(详解)
2018/01/03 Javascript
Vue组件和Route的生命周期实例详解
2018/02/10 Javascript
原生JS实现的碰撞检测功能示例
2018/05/18 Javascript
详解angular部署到iis出现404解决方案
2018/08/14 Javascript
简介Django框架中可使用的各类缓存
2015/07/23 Python
python控制台中实现进度条功能
2015/11/10 Python
python保存网页图片到本地的方法
2018/07/24 Python
python用插值法绘制平滑曲线
2021/02/19 Python
python实现大转盘抽奖效果
2019/01/22 Python
numpy 返回函数的上三角矩阵实例
2019/11/25 Python
django-orm F对象的使用 按照两个字段的和,乘积排序实例
2020/05/18 Python
CSS3制作皮卡丘动画壁纸的示例
2020/11/02 HTML / CSS
2014年综治宣传月活动总结
2014/04/28 职场文书
一分钟演讲稿
2014/04/30 职场文书
优秀学生干部事迹材料
2014/12/24 职场文书
村官2015年度工作总结
2015/10/14 职场文书
SpringBoot2零基础到精通之数据库专项精讲
2022/03/22 Java/Android
【海涛解说】史上最给力比赛,挑战DOTA极限
2022/04/01 DOTA