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学习笔记之 函数声明(二)
Jun 09 PHP
PHP写杨辉三角实例代码
Jul 17 PHP
深入PHP内存相关的功能特性详解
Jun 08 PHP
php抓取页面的几种方法详解
Jun 17 PHP
PHP中的按位与和按位或操作示例
Jan 27 PHP
Session的工作机制详解和安全性问题(PHP实例讲解)
Apr 10 PHP
ThinkPHP中自定义目录结构的设置方法
Aug 15 PHP
PHPer 需要了解的 5 个 Composer 小技巧
Aug 18 PHP
php实现paypal 授权登录
May 28 PHP
PHP 二维关联数组根据其中一个字段排序(推荐)
Apr 04 PHP
PHP判断一个数组是另一个数组子集的方法详解
Jul 31 PHP
Laravel jwt 多表(多用户端)验证隔离的实现
Dec 18 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桌面中心(一) 创建数据库
2007/03/11 PHP
dedecms 批量提取第一张图片最为缩略图的代码(文章+软件)
2009/10/29 PHP
php动态绑定变量的用法
2015/06/16 PHP
php使用Jpgraph创建折线图效果示例
2017/02/15 PHP
PHP面向对象五大原则之接口隔离原则(ISP)详解
2018/04/04 PHP
Yii2语言国际化自动配置详解
2018/08/22 PHP
JavaScript实现动态增加文件域表单
2009/02/12 Javascript
ExtJs事件机制基本代码模型和流程解析
2010/10/24 Javascript
JS解决ie6下png透明的方法实例
2013/08/02 Javascript
用html5 js实现点击一个按钮达到浏览器全屏效果
2014/05/28 Javascript
jQuery常用操作方法及常用函数总结
2014/06/19 Javascript
使用jquery.qrcode生成彩色二维码实例
2014/08/08 Javascript
JavaScript调试工具汇总
2014/12/23 Javascript
ES6概念 Symbol.keyFor()方法
2016/12/25 Javascript
简单谈谈关于 npm 5.0 的新坑
2017/06/08 Javascript
Vue-router路由判断页面未登录跳转到登录页面的实例
2017/10/26 Javascript
Vue filter介绍及详细使用
2018/04/04 Javascript
Nodejs异步回调之异常处理实例分析
2018/06/22 NodeJs
优雅的在React项目中使用Redux的方法
2018/11/10 Javascript
Electron + vue 打包桌面操作流程详解
2019/06/24 Javascript
uni-app 支持多端第三方地图定位的方法
2020/01/03 Javascript
vue 遮罩层阻止默认滚动事件操作
2020/07/28 Javascript
[01:32]2014DOTA2西雅图邀请赛 CIS我们有信心进入正赛
2014/07/08 DOTA
Python下的twisted框架入门指引
2015/04/15 Python
利用ctypes提高Python的执行速度
2016/09/09 Python
python生成ppt的方法
2018/06/07 Python
pygame实现俄罗斯方块游戏
2018/06/26 Python
python从list列表中选出一个数和其对应的坐标方法
2019/07/20 Python
Python使用APScheduler实现定时任务过程解析
2019/09/11 Python
Python Sympy计算梯度、散度和旋度的实例
2019/12/06 Python
外贸主管求职简历的自我评价
2013/10/23 职场文书
竞聘书格式及范文
2014/03/31 职场文书
三严三实心得体会范文
2014/10/13 职场文书
人才市场接收函
2015/01/30 职场文书
2015年城管个人工作总结范文
2015/04/20 职场文书
课文《燕子》教学反思
2016/02/17 职场文书