使用PHPMailer发送邮件实例


Posted in PHP onFebruary 15, 2017

本文实例为大家分享了PHPMailer发送邮件的具体代码,供大家参考,具体内容如下

PHPMailer类源代码下载地址:https://github.com/PHPMailer/PHPMailer

<?php 
/* 
to:  邮件接收地址 
subject: 邮件主题 
body: 邮件内容 
attachpath:附件地址 
cc: 邮件抄送地址 
bcc: 邮件暗抄送地址 
*/ 
function send_mail($to, $subject="", $body="", $attachpath="", $cc="", $bcc="") 
{ 
 // 对邮件内容进行必要的过滤 
 $body = eregi_replace("[\]",'',$body);  
 
 // 设定时区 
 date_default_timezone_set("PRC"); 
 
 require_once('class.phpmailer.php'); 
 require_once("class.smtp.php"); 
 
 // 实例化PHPMailer对象 
 $mail = new PHPMailer();     
 
 // 设定邮件编码,默认ISO-8859-1,如果发中文此项必须设置为 UTF-8 
 $mail->CharSet ="UTF-8"; 
 
 // 设定使用SMTP服务 
 $mail->IsSMTP(); 
 
 // 启用 SMTP 验证功能 
 $mail->SMTPAuth = true; 
 
 // SMTP 安全协议 
 $mail->SMTPSecure = "ssl"; 
 
 // SMTP 服务器 
 $mail->Host = "smtp.qq.com"; 
 
 // SMTP服务器的端口号 
 $mail->Port = 465; 
 
 // SMTP服务器用户名和密码 
 $mail->Username = "xxxxxx@qq.com";  
 $mail->Password = "xxxxxx";   
 
 // 设置发件人地址和名称,名称可有可无 
 $mail->SetFrom("xxxxxx@qq.com", "xxxxxx"); 
 
 // 设置邮件接收地址和名称,第二个参数无所谓。必须用AddAddress添加邮件接收地址。AddReplyTo方法没什么用。 
 //$mail->AddReplyTo("xxxxxx@163.com", "xxxxxx"); 
 $mailaddrs = split(",", $to); 
 foreach ($mailaddrs as $addres) 
 { 
 //校验邮箱地址是否合法 
 if (filter_var($addres, FILTER_VALIDATE_EMAIL)) 
 { 
  $mail->AddAddress($addres);  
 } 
 } 
 
 // 设置邮件抄送地址 
 if ($cc != "") 
 { 
 $ccaddrs = split(",", $cc); 
 foreach ($ccaddrs as $ccaddr) 
 { 
  //校验邮箱地址是否合法 
  if (filter_var($ccaddr, FILTER_VALIDATE_EMAIL)) 
  { 
  $mail->addCC($ccaddr);  
  } 
 } 
 } 
 
 // 设置邮件暗抄送地址,私密发送 
 if ($bcc != "") 
 { 
 $bccaddrs = split(",", $bcc); 
 foreach ($bccaddrs as $bccaddr) 
 { 
  //校验邮箱地址是否合法 
  if (filter_var($bccaddr, FILTER_VALIDATE_EMAIL)) 
  { 
  $mail->addBCC($bccaddr);  
  } 
 } 
 } 
 
 // 设置邮件主题 
 $mail->Subject = $subject; 
 
 // 可选项,向下兼容考虑 
 $mail->AltBody = "为了查看该邮件,请切换到支持 HTML 的邮件客户端"; 
 
 // 设置邮件内容 
 $mail->MsgHTML($body);     
 
 //使用HTML格式发送邮件 
 $mail->IsHTML(true); 
 
 // 添加附件,第一个参数是附件地址,第二个参数附件名 
 //$mail->AddAttachment("images/phpmailer.gif"); 
 $mail->AddAttachment($attachpath); 
 
 // 发送邮件 
 if(!$mail->Send()) 
 { 
 echo "发送失败:" . $mail->ErrorInfo . PHP_EOL; 
 } 
 else 
 { 
 echo "恭喜,邮件发送成功!" . PHP_EOL; 
 } 
} 
$emailAddr = "xxxxxx@163.com,xxxxxx@qq.com,"; 
send_mail($emailAddr, "测试邮件", "<h1>使用PHPMailer类发送的邮件。</h1>", "mail/20170216.gif", "xxxxxx@qq.com", ""); 
?>

测试结果:

使用PHPMailer发送邮件实例

说明:第44行的SMTP服务器密码为qq邮箱授权码。

登录QQ邮箱->设置->账户->POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务->生成授权码

使用PHPMailer发送邮件实例

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
写一个用户在线显示的程序
Oct 09 PHP
基于HTTP长连接的&quot;服务器推&quot;技术的php 简易聊天室
Oct 31 PHP
从php核心代码分析require和include的区别
Jan 02 PHP
php获取qq用户昵称和在线状态(实例分析)
Oct 27 PHP
使用pthreads实现真正的PHP多线程(需PHP5.3以上版本)
May 05 PHP
php实现上传图片保存到数据库的方法
Feb 11 PHP
smarty的section嵌套循环用法示例
May 28 PHP
PHP开发中csrf攻击的简单演示和防范
May 07 PHP
微信公众号开发之获取位置信息php代码
Jun 13 PHP
PHP实现websocket通信的方法示例
Aug 28 PHP
浅析PHP 中move_uploaded_file 上传中文文件名失败
Apr 17 PHP
TP5多入口设置实例讲解
Dec 15 PHP
php使用gd2绘制基本图形示例(直线、圆、正方形)
Feb 15 #PHP
php使用GD2绘制几何图形示例
Feb 15 #PHP
php使用Jpgraph创建柱状图展示年度收支表效果示例
Feb 15 #PHP
php使用Jpgraph创建折线图效果示例
Feb 15 #PHP
php使用Jpgraph创建3D饼形图效果示例
Feb 15 #PHP
PHP反射机制原理与用法详解
Feb 15 #PHP
thinkphp Apache配置重启Apache1 restart 出错解决办法
Feb 15 #PHP
You might like
PHP大批量数据操作时临时调整内存与执行时间的方法
2011/04/20 PHP
centos+php+coreseek+sphinx+mysql之一coreseek安装篇
2016/10/25 PHP
PHP中trait使用方法详细介绍
2017/05/21 PHP
PHP操作Redis常用命令的实例详解
2020/12/23 PHP
些很实用且必用的小脚本代码
2006/06/26 Javascript
jquery 子窗口操作父窗口的代码
2009/09/21 Javascript
javascript利用初始化数据装配模版的实现代码
2010/11/17 Javascript
文本框倒叙输入让输入框的焦点始终在最开始的位置
2014/09/01 Javascript
深入理解JavaScript系列(38):设计模式之职责链模式详解
2015/03/04 Javascript
javascript判断并获取注册表中可信任站点的方法
2015/06/01 Javascript
在一个页面实现两个zTree联动的方法
2017/12/20 Javascript
利用JS实现一个同Excel表现的智能填充算法
2018/08/13 Javascript
记录一次开发微信网页分享的步骤
2019/05/07 Javascript
JS字符串常用操作方法实例小结
2019/06/24 Javascript
关于layui导航栏不展示下拉列表的解决方法
2019/09/25 Javascript
Vue+Node服务器查询Mongo数据库及页面数据传递操作实例分析
2019/12/20 Javascript
vue在线动态切换主题色方案
2020/03/26 Javascript
Python实现远程调用MetaSploit的方法
2014/08/22 Python
python实现复制整个目录的方法
2015/05/12 Python
Python正则表达式使用范例分享
2016/12/04 Python
django使用html模板减少代码代码解析
2017/12/12 Python
Python实现简易过滤删除数字的方法小结
2019/01/09 Python
Python中时间datetime的处理与转换用法总结
2019/02/18 Python
Python二叉树的镜像转换实现方法示例
2019/03/06 Python
面向对象学习之pygame坦克大战
2019/09/11 Python
Python散点图与折线图绘制过程解析
2019/11/30 Python
Pytorch Tensor 输出为txt和mat格式方式
2020/01/03 Python
python基于opencv实现人脸识别
2021/01/04 Python
益模软件Java笔试题
2012/03/27 面试题
广州地球村科技数据库题目
2016/04/25 面试题
工作中的自我评价如何写好
2013/10/28 职场文书
销售内勤岗位职责
2014/04/15 职场文书
保护环境倡议书500字
2014/05/19 职场文书
2014年教师党员自我评价范文
2014/09/22 职场文书
违纪检讨书
2015/01/27 职场文书
单位证明范文
2015/06/18 职场文书