由于项目的需要,要实现给我们的网站用户发送邮件,于是就有了这篇博客。以下的内容是我结合网上的例子加上自己的实践的出来的。希望对大家有帮助。
PHPMailer的介绍:
优点:
- 可运行在任何平台之上
- 支持SMTP验证
- 发送邮时指定多个收件人,抄送地址,暗送地址和回复地址;注:添加抄送、暗送仅win平台下smtp方式支持
- 支持多种邮件编码包括:8bit,base64,binary和quoted-printable
- 支持冗余SMTP服务器,即可以指定主smtp服务器地址也只可以指定备份smtp服务器
- 支持带附件的邮件,可以为邮件添加任意格式的附件—当然得你的服务器有足够大的带宽支撑
- 自定义邮件头信息,这跟php中通过header函数发送头信息类似
支持将邮件正文制作成HTMl内容,那么就可以在邮件正文中插入图
片 - 灵活的debug支持
- 经测试兼容的SMTP服务器包括:Sendmail,qmail,Postfix,Imail,Exchange等
PHPMailer的获取:
PHPMailer项目地址:https://github.com/PHPMailer/PHPMailer 使用Git命令克隆到本地,或直接在该项目页面的右下方点击“ Download ZIP ”即可获取到完整的PHPMailer代码包,再到本地解压即可。
步骤一:使我们的QQ邮箱能够发送邮件板面的做法和配料
这里怎么说能够发送邮件呢?其实我们的邮箱都是可以发送邮件的,但是要实现在我们的网站中发送邮件,那就要设置一下我们的QQ邮箱了,因为此时我们的网站现在是作为一个第三方客户端存在的。
- 由于待会我们用到的是SMTP服务器来发送,在这里建议把前面的两项开启了!当你点击开启的时候,它会提示:
当你完成以上步骤之后,就会得到一个授权码,你可以先复制出来,待会我们会用到(开启两项的话会得到两个授权码,用最后的那个授权码!或者点击下面的生成授权码来获取一个新的授权码,一定要最新的!)。
步骤二:使我们的PHP能够使用QQ邮箱发送邮件
PHPMailer需PHP的socket扩展支持,而PHPMailer链接qq域名邮箱时需要ssl加密方式,固php还得openssl的支持,可以查看phpinfo,如下两项均存在则可以使用,其中openssl版本号之类不用管;许多虚拟主机中的php是不支持openssl扩展的,那你可能就悲剧了。
步骤三:将PHPMailer做一定的处理
由于我们下载下来的PHPMailer文件夹里边的文件有很多我们是用不上的,所以我们也没必要浪费这些内存。我们可以对这个文件夹瘦身,在这里我只保存了以下的几个文件:class.phpmailer.php、class.phpmaileroauth.php、class.pop3.php、class.smtp.php、PHPMailerAutoload.php。
步骤四:编写发送邮件代码
在这里我是直接封装了一个公共的方法(写在 functions.php 文件中):
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
|
好了,现在我们调用该公共方法来测试一下,我要发送一篇邮件 通知他顺利加入 LSGO 实验室
1 2 3 |
|
亲测成功!!!!