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 判断变量类型实现代码
Oct 23 PHP
PHP 作用域解析运算符(::)
Jul 27 PHP
php编程实现获取excel文档内容的代码实例
Jun 28 PHP
将时间以距今多久的形式表示,PHP,js双版本
Sep 25 PHP
thinkphp模板继承实例简述
Nov 26 PHP
php循环table实现一行两列显示的方法
Jun 04 PHP
jquery获取多个checkbox的值异步提交给php的方法
Jun 24 PHP
PHP中addslashes()和stripslashes()实现字符串转义和还原用法实例
Jan 07 PHP
PHP实现类似于C语言的文件读取及解析功能
Sep 01 PHP
PHP实现基于栈的后缀表达式求值功能
Nov 10 PHP
php通过pecl方式安装扩展的实例讲解
Feb 02 PHP
解决PHP curl或file_get_contents下载图片损坏或无法打开的问题
Oct 11 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
IIS6的PHP最佳配置方法
2007/03/19 PHP
Mac下php 5升级到php 7的步骤详解
2017/04/26 PHP
php实现页面纯静态的实例代码
2017/06/21 PHP
PHP性能分析工具xhprof的安装使用与注意事项
2017/12/19 PHP
Yii2框架自定义验证规则操作示例
2019/02/08 PHP
Windows平台PHP+IECapt实现网页批量截图并创建缩略图功能详解
2019/08/02 PHP
JS 操作符整理[推荐收藏]
2011/11/15 Javascript
解析瀑布流布局:JS+绝对定位的实现
2013/05/08 Javascript
关于innerHTML后丢失动态绑定的EVENT问题解决方法
2013/05/19 Javascript
js实现的类似于asp数据字典的数据类型代码实例
2014/09/03 Javascript
jQuery实现TAB风格的全国省份城市滑动切换效果代码
2015/08/24 Javascript
Node.js读写文件之批量替换图片的实现方法
2016/09/07 Javascript
Javascript vue.js表格分页,ajax异步加载数据
2016/10/24 Javascript
Vue.js中用v-bind绑定class的注意事项
2016/12/13 Javascript
nodejs入门教程五:连接数据库的方法分析
2017/04/24 NodeJs
微信小程序 本地数据读取实例
2017/04/27 Javascript
详解vscode中vue代码颜色插件
2018/10/11 Javascript
微信小程序冒泡事件及其阻止方法实例分析
2018/12/06 Javascript
js+canvas绘制图形验证码
2020/09/21 Javascript
[47:42]完美世界DOTA2联赛PWL S2 GXR vs Ink 第一场 11.19
2020/11/20 DOTA
python编程羊车门问题代码示例
2017/10/25 Python
python topN 取最大的N个数或最小的N个数方法
2018/06/04 Python
详解Anconda环境下载python包的教程(图形界面+命令行+pycharm安装)
2019/11/11 Python
django框架中ajax的使用及避开CSRF 验证的方式详解
2019/12/11 Python
Python列表元素删除和remove()方法详解
2021/01/04 Python
CSS3结构性伪类选择器九种写法
2012/04/18 HTML / CSS
世界第一冲浪品牌:O’Neill
2016/08/30 全球购物
北美个性化礼品商店:Things Remembered
2018/06/12 全球购物
医院护理人员的自我评价分享
2013/10/04 职场文书
质检部职责
2013/12/28 职场文书
社区庆中秋节活动方案
2014/02/07 职场文书
个人综合鉴定材料
2014/05/23 职场文书
公司离职证明范本(汇总)
2014/09/10 职场文书
大国崛起日本观后感
2015/06/02 职场文书
口袋妖怪冰系十大最强精灵,几何雪花排第七,第六类似北极熊
2022/03/18 日漫
JavaScript原型链中函数和对象的理解
2022/06/16 Javascript