一、邮件应用在项目中的场景:
①验证类邮件:注册时通过电子邮件进行帐号的激活;在登录时,忘记密码需要进行密码重置的操作;
②营销类邮件:给客户推送营销类的电子邮件,特价商品、促销、生日关怀等等;
二、原理篇
首先我们来认识一下什么是邮件的协议:
Smtp协议: 是发送邮件的协议,不影响服务器的内容,相当于copy一份;
Pop3协议: 是接收邮件的协议,不影响服务器的内容,相当于copy一份;
IMAP协议: 接收和发送都可以,并同步信息到 邮件服务器 ;
发送邮件最主要的就是邮件服务器,是专门处理收发邮件的大车间,邮件服务器可以自己搭建,但是一般都用比较成熟的比如:163 邮局 ,腾讯邮件、 搜狐 等电子邮件服务器;
为什么我们经常选择大型网站的电子邮件服务器而不自己搭建?
1、消耗的资源比较大,网络带宽也受影响;
2、安全问题,附件可能含有病毒,邮件服务器的防病毒需要很高级的手段;
3、垃圾邮件防范手段需要实时保持更新;
成熟的邮件服务器: 163邮局、腾讯、阿里
三、应用篇
一般结合我们的项目我们的程序只做发送邮件的功能,PHP发送邮件一般采用Phpmailer的组件进行发送,那么如何将PHPMailer在项目中使用?
1、首先需要下载 PHPMailer的代码包,下载解压后如下,
2、编写函数代码并设置PHPMailer发送邮件方式为 ssl
3、设置php.ini
4、设置邮箱的授权码
授权码是指邮箱可以通过帐号和授权码进行收发邮件,防止通过邮箱登录密码进行收发的风险,因为密码需要填写在第三方的软件中,第三方的软件如果不能很好的安全的保存我们的密码,就有可能造成密码泄漏,造成损失;而授权码可以随时更换而不影响我们的邮箱正常业务。
如果不设置php.in的内容后者授权码不正确会造成登录不上smtp服务器的问题,会报以下错误:
四、框架篇
如何在ThinkPHP5框架中使用PHPMailer类来发送电子邮件呢?很简单五步就可以在TP5中发送电子邮件。
1、 将class.phpmailer.php和class.SMTP.php复制到extend目录下;
2、 将函数中增加一行代码
3、 配置文件中增加配置项
4、 在控制器中调用即可
5、在浏览器中观察返回的结果
相关文章
本站已关闭游客评论,请登录或者注册后再评论吧~