编程开源技术交流,分享技术与知识

网站首页 > 开源技术 正文

卓象程序员:如何在项目中发送电子邮件

wxchong 2024-07-18 09:43:59 开源技术 8 ℃ 0 评论

一、邮件应用在项目中的场景:

①验证类邮件:注册时通过电子邮件进行帐号的激活;在登录时,忘记密码需要进行密码重置的操作;

②营销类邮件:给客户推送营销类的电子邮件,特价商品、促销、生日关怀等等;


二、原理篇

首先我们来认识一下什么是邮件的协议:

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、在浏览器中观察返回的结果

?

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表