通过 PHPMailer 实现 SMTP 方式发送邮件

发布于 2017-11-06 23:11:08 字数 1988 浏览 2433 评论 0

PHPMailer 是一个用于发送电子邮件的 PHP 函数包,一些虚拟主机默认是没有配置邮件系统的,所以我们只能通过 SMTP 的方式发送邮件。

通过 PHPMailer 实现 SMTP 方式发送邮件

PHP本身提供了一个邮件发送函数 Mail,可以在程序中直接发送电子邮件,不过该函数要求服务器支持 SendMail 或者必须设置一台不需要中继的邮件发送服务器,但现在要找到一台不需要身份验证的邮件发送中继几乎不可能,所以使用 Mail 函数往往无法成功发送 Email。

自己如果熟悉 SMTP 协议,结合 Socket 功能就可以编写高效稳定的邮件发送程序,但对一般用户来说太困难.好在互联网上已经有很多别人编写好的邮件发送模块,我们只需要下载后简单调用即可,十分方便。

它提供的功能包括

  • 在发送邮时指定多个收件人、抄送地址、暗送地址和回复地址
  • 支持多种邮件编码包括:8bit、base64、binary和quoted-printable
  • 支持SMTP验证
  • 支持冗余SMTP服务器
  • 支持带附件的邮件和Html格式的邮件
  • 自定义邮件头
  • 支持在邮件中嵌入图片
  • 调试灵活
  • 经测试兼容的SMTP服务器包括:Sendmail,qmail,Postfix,Imail,Exchange等
  • 可运行在任何平台之上

使用方法

require("class.phpmailer.php"); //这个是一个smtp的php类,网上可以下载得到
$mail = new PHPMailer(); //实例化邮件发送类
$mail->CharSet = "UTF-8"; //邮件的编码
$address ="sdasdsadsa@qq.com"; //收件人地址
$mail->IsSMTP(); // 使用SMTP方式发送
$mail->Host = "smtp.126.com"; // 您的企业邮局域名
$mail->SMTPAuth = true; // 启用SMTP验证功能
$mail->Username = "sffsdf@126.com"; // 邮局用户名(请填写完整的email地址)
$mail->Password = "123444"; // 邮箱密码
$mail->Port=25; // 邮件发送的端口
$mail->From = "sffsdf@126.com"; // 邮件发送者email地址
$mail->FromName = "在线Q聊";
$mail->AddAddress("$address", "a");// 收件人地址,可以替换成任何想要接收邮件的email信箱,格式是AddAddress("收件人email","收件人姓名")
//$mail->AddReplyTo("", "");

//$mail->AddAttachment("/var/tmp/file.tar.gz"); // 添加附件
$mail->IsHTML(true); // set email format to HTML //是否使用HTML格式

$mail->Subject = "noreply"; // 邮件标题
$mail->Body = "您的验证码是:5245,15分钟内有效"; // 邮件内容,上面设置HTML,则可以是HTML

if(!$mail->Send()){
    echo "邮件发送失败. <p>";
    echo "错误原因: " . $mail->ErrorInfo;
    exit;
}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

关于作者

JSmiles

生命进入颠沛而奔忙的本质状态,并将以不断告别和相遇的陈旧方式继续下去。

0 文章
0 评论
84960 人气
更多

推荐作者

遂心如意

文章 0 评论 0

5513090242

文章 0 评论 0

巷雨优美回忆

文章 0 评论 0

junpengz2000

文章 0 评论 0

13郎

文章 0 评论 0

qq_xU4RDg

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文