本文实例讲述了ThinkPHP3.2.3框架邮件发送功能。分享给大家供大家参考,具体如下: 背景 web 开发过程中,经常会用到邮件的发送功能,比如接收消费账单的提醒、亚马逊图书推荐的推送
本文实例讲述了ThinkPHP3.2.3框架邮件发送功能。分享给大家供大家参考,具体如下:
背景
-
web 开发过程中,经常会用到邮件的发送功能,比如接收消费账单的提醒、亚马逊图书推荐的推送,或者网站不正常操作报警的邮件提示等。
-
下面是一个在ThinkPHP 3.2.3 框架下集成 PHPMailer 使用的邮件发送功能实现过程,仅供参考,谢谢...
一、前期准备
1).首先对 STMP 的知识稍作了解
STMP 简介 《百度百科》
2).开启邮箱 STMP 服务
- 以 163.com 邮箱为例,点击上方导航栏的“设置”,选择“POP3/SMTP/IMAP”进行下面的设置
- 着重记下服务器地址(SMTP服务器:smtp.163.com)
- 然后点击“客户端授权密码”进行权限设置,一般会进行短信的验证,并记录下自己设定的授权登录密码,后面的代码中需要用到。
二、代码实现
1).在公共配置文件中,进行数据配置
//邮件发送 配置 'EMAIL_CONFIG' => array( 'host' => 'smtp.163.com', 'post' => '25', 'username' => 'xxxxxxxxxx@163.com',//TODO 邮箱账号 'password' => 'xxxxxxx',//TODO 客户端授权密码 'sender' => '木头人',//TODO 发送人昵称 ),
2).Email 核心代码如下
- 注意 phpmailer 代码包所放的位置,以便后面的 Email 类的实例化
- 此处代码主要是调用配置文件数据,无需变动,需要深入学习的可以自行阅读.
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'
- 调用邮件发送功能的核心代码为下图中红色框内三行。
三、功能实现效果
1).前端信息输入
- 注意:邮箱输入错误或者内容填写太过随意,会造成发送失败,邮件可在发送者邮箱看到,提示“抱歉,您的邮件被退回来了...”。
邮件发送前端显示
2).接收邮箱的成功接收
- 如果操作正常,上面输入的邮箱中会接收到对应的邮件,但是有的可能会在自己的“垃圾箱”中,注意查收.
成功进行邮件接收
三、附录
1).参考视频:http://coding.imooc.com/learn/list/85.html
2).源代码下载:https://github.com/JingYin007/zmPro
更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork框架入门教程》及《PHP模板技术总结》。
希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。