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 相关文章推荐
JS实现php的伪分页
May 25 PHP
PHP Stream_*系列函数
Aug 01 PHP
php中大括号作用介绍
Mar 22 PHP
解析php做推送服务端实现ios消息推送
Jul 01 PHP
php函数间的参数传递(值传递/引用传递)
Sep 23 PHP
php验证是否是md5编码的简单代码
Apr 01 PHP
yii数据库的查询方法
Dec 28 PHP
PHP 下载文件时如何自动添加bom头及解释BOM头和去掉bom头的方法
Jan 04 PHP
Ubuntu上安装yaf扩展的方法
Jan 29 PHP
PHP检查URL包含特定字符串实例方法
Feb 11 PHP
PHP-FPM 设置多pool及配置文件重写操作示例
Oct 02 PHP
如何在PHP中使用AES加密算法加密数据
Jun 24 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打造属于自己的MVC框架
2012/03/07 PHP
php实现统计邮件大小的方法
2013/08/06 PHP
PHP判断一个gif图片是否为动态图片的方法
2014/11/19 PHP
php微信开发之关键词回复功能
2018/06/13 PHP
php微信公众号开发之关键词回复
2018/10/20 PHP
Thinkphp 框架扩展之Widget扩展实现方法分析
2020/04/23 PHP
javascript使用prototype完成单继承
2014/12/24 Javascript
JavaScript中的ajax功能的概念和示例详解
2016/10/17 Javascript
js获取隐藏元素的宽高
2017/02/24 Javascript
详解在 Angular 项目中添加 clean-blog 模板
2017/07/04 Javascript
Angular中点击li标签实现更改颜色的核心代码
2017/12/08 Javascript
jQuery创建及操作xml格式数据示例
2018/05/26 jQuery
JavaScript设计模式之职责链模式应用示例
2018/08/07 Javascript
vue elementUI table表格数据 滚动懒加载的实现方法
2019/04/04 Javascript
详解vue-cli3多页应用改造
2019/06/04 Javascript
解决layui的使用以及针对select、radio等表单组件不显示的问题
2019/09/05 Javascript
js获取 gif 的帧数的代码实例
2019/09/10 Javascript
在layui框架中select下拉框监听更改事件的例子
2019/09/20 Javascript
JS实现前端路由功能示例【原生路由】
2020/05/29 Javascript
ES6 十大特性简介
2020/12/09 Javascript
Python 自动安装 Rising 杀毒软件
2009/04/24 Python
python实现类似ftp传输文件的网络程序示例
2014/04/08 Python
Python中暂存上传图片的方法
2015/02/18 Python
python 删除列表里所有空格项的方法总结
2018/04/18 Python
Python3显示当前时间、计算时间差及时间加减法示例代码
2019/09/07 Python
python pprint模块中print()和pprint()两者的区别
2020/02/10 Python
查看keras的默认backend实现方式
2020/06/19 Python
Java Unsafe类实现原理及测试代码
2020/09/15 Python
莫斯科的韩国化妆品店:Sifo
2019/12/04 全球购物
软件配置管理有什么好处
2015/04/15 面试题
公司放假通知范文
2015/04/14 职场文书
2015年办公室个人工作总结
2015/04/20 职场文书
小学生手册家长意见
2015/06/03 职场文书
nginx作grpc的反向代理踩坑总结
2021/07/07 Servers
基于Python实现股票收益率分析
2022/04/02 Python