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 相关文章推荐
一个域名查询的程序
Oct 09 PHP
php mysql数据库操作分页类
Jun 04 PHP
PHP file_get_contents 函数超时的几种解决方法
Jul 30 PHP
同台服务器使用缓存APC效率高于Memcached的演示代码
Feb 16 PHP
PHP 网络开发详解之远程文件包含漏洞
Apr 25 PHP
php数组函数序列之each() - 获取数组当前内部指针所指向元素的键名和键值,并将指针移到下一位
Oct 31 PHP
解析php中eclipse 用空格替换 tab键
Jun 24 PHP
php读取文件内容到数组的方法
Mar 16 PHP
PHP安装memcached扩展笔记
May 28 PHP
swoole和websocket简单聊天室开发
Nov 18 PHP
PHP对称加密算法(DES/AES)类的实现代码
Nov 14 PHP
thinkPHP框架中layer.js的封装与使用方法示例
Jan 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调用Webservice实例代码
2011/07/29 PHP
PHPExcel实现的读取多工作表操作示例
2020/04/14 PHP
javascript 精粹笔记
2010/05/09 Javascript
js获取浏览器的可视区域尺寸的实现代码
2011/11/30 Javascript
利用js(jquery)操作Cookie的方法说明
2013/12/19 Javascript
JavaScript中判断页面关闭、页面刷新的实现代码
2014/08/27 Javascript
需灵活掌握的Bootstrap预定义排版类 你精通吗?
2016/06/20 Javascript
JS如何设置元素样式的方法示例
2017/08/28 Javascript
详解微信小程序中的页面代码中的模板的封装
2017/10/12 Javascript
jQuery+koa2实现简单的Ajax请求的示例
2018/03/06 jQuery
AngularJS与后端php的数据交互方法
2018/08/13 Javascript
聊聊鉴权那些事(推荐)
2019/08/22 Javascript
vue路由的配置和页面切换详解
2020/09/09 Javascript
python实现的希尔排序算法实例
2015/07/01 Python
python3设计模式之简单工厂模式
2017/10/17 Python
Python实现爬虫抓取与读写、追加到excel文件操作示例
2018/06/27 Python
Python实现二叉树的常见遍历操作总结【7种方法】
2019/03/06 Python
Python Django框架实现应用添加logging日志操作示例
2019/05/17 Python
Python 可变类型和不可变类型及引用过程解析
2019/09/27 Python
Python如何使用argparse模块处理命令行参数
2019/12/11 Python
Django+boostrap 美化admin后台的操作
2020/03/11 Python
利用pandas向一个csv文件追加写入数据的实现示例
2020/04/23 Python
教你一分钟在win10终端成功安装Pytorch的方法步骤
2021/01/28 Python
轻松掌握CSS3中的字体大小单位rem的使用方法
2016/05/24 HTML / CSS
使用HTML5 Canvas API中的clip()方法裁剪区域图像
2016/03/25 HTML / CSS
HTML5中的进度条progress元素简介及兼容性处理
2016/06/02 HTML / CSS
中专生毕业自我鉴定
2013/11/01 职场文书
销售员个人求职的自我评价
2014/02/10 职场文书
国庆宣传标语
2014/06/30 职场文书
2014年幼儿园安全工作总结
2014/11/10 职场文书
2014高三学生考试作弊检讨书
2014/12/14 职场文书
大学生学年个人总结
2015/02/15 职场文书
婚礼伴郎致辞
2015/07/28 职场文书
2016年大学生暑期社会实践方案
2015/11/26 职场文书
用Python编写简单的gRPC服务的详细过程
2021/07/04 Python
python接口测试返回数据为字典取值方式
2022/02/12 Python