PHP使用PHPMailer发送邮件的简单使用方法


Posted in PHP onNovember 12, 2013

最近需要用到发送邮件的功能,原本是用PHP自带的mail()函数发送的。php mail()这个方法非常简单、方便、易用,但是除了网易邮箱、QQ邮箱、GMAIL邮箱等常用的邮箱可以收到之外,经测试HOTMAIL、TOM、LIVE等邮箱是收不到此类邮件的。所以就转而使用PHPMailer这个强大的邮件发送类。
使用官方自带的一些例子,有些会报 Mailer Error: Could not instantiate mail function. 这个错误。参考了一些资料之后,还是自己写了一个方法。代码很简单,就不多解释了。

function mailto($nickname, $address, $id, $activation_code)
{
 date_default_timezone_set('PRC'); 
 include_once("class.phpmailer.php"); $mail = new PHPMailer(); // defaults to using php "mail()"
 $mail->IsSMTP();
 $mail->Host = "smtp.163.com";   // SMTP 服务器  
 $mail->SMTPAuth = true;              // 打开SMTP 认证  
 $mail->Username = "nowamagic@163.com";  // 用户名
 $mail->Password = "yourpassword";          // 密码  
 //$body = file_get_contents('application/views/nmra/register.html');
 //$body = preg_replace('/\\\\/','', $body); //Strip backslashes
 $body = '<p><body style="margin: 10px;"></p>';
 $body .= '<div style="width: 640px; font-family: Arial, Helvetica, sans-serif; font-size: 14px; ">';
 $body .= '<div align="center"><img src="images/phpmailer.gif" style="height: 90px; width: 340px"></div>';
 $body .= '<p>'.$nickname.',您好。</p>';
 $body .= '<p>恭喜你成为简明现代魔法研究协会的第'.$id.'名会员。</p>';
 $body .= '<p>现代魔法研究协会(NowaMagic Research Association)是一个程序猿、攻城狮、设计狮和开发者们技术交流、话题讨论的社区。希望在这里你能找到感兴趣的话题与志同道合的朋友。</p>';
 $body .= '请点击以下链接验证您的邮箱,请注意域名为nowamagic.net:<a href="http://www.nowamagic.net/librarys/accounts/activation/?code="'.$activation_code.'" target="_blank">http://www.nowamagic.net/librarys/accounts/activation/?code='.$activation_code.'</a>';
 $body .= '<p>顺祝工作学习愉快,生活舒心。</p>';
 $body .= '</div></body>';
 //echo $body;
 $mail->AddReplyTo("nowamagic@163.com","Gonn");
 $mail->SetFrom('nowamagic@163.com', 'Gonn');
 $mail->AddReplyTo("nowamagic@163.com","Gonn");
 $address = "252211974@qq.com";
 //$address = "nowamagic@gmail.com";
 $mail->AddAddress($address, $nickname);
 $subject = "收到来自简明现代魔法的邮件";
 $mail->Subject = "=?UTF-8?B?".base64_encode($subject)."?=";
 // optional, comment out and test
 $mail->AltBody = "To view the message, please use an HTML compatible email viewer!"; 
 $mail->MsgHTML($body);
 //$mail->AddAttachment("images/phpmailer.gif");      // attachment
 //$mail->AddAttachment("images/phpmailer_mini.gif"); // attachment
 if(!$mail->Send()) {
  //echo "Mailer Error: " . $mail->ErrorInfo;
 } 
 else {
  //echo "Message sent!";
 }
}

使用的时候只要引入两个PHP类,然后自己写个方法就OK了,两个类很小,发送邮件速度也很快。
PHPMailer 是一个功能强大的邮件类,其主要功能特点:
支持邮件 s/mime加密的数字签名
支持邮件多个 TOs, CCs, BCCs and REPLY-TOs
可以工作在任何服务器平台,所以不用担心WIN平台无法发送邮件的问题的
支持文本/HTML格式邮件
可以嵌入image图像
对于邮件客户端不支持HTML阅读的进行支持
功能强大的发送邮件调试功能debug
自定义邮件header
冗余SMTP服务器支持
支持8bit, base64, binary, and quoted-printable 编码
文字自动换行
支持多附件发送功能
支持SMTP服务器验证功能
在Sendmail, qmail, Postfix, Gmail, Imail, Exchange 等平台测试成功
提供的下载文件中,包括内容详细的说明文档及示
PHP 相关文章推荐
PHP提取中文首字母
Apr 09 PHP
php数组对百万数据进行排除重复数据的实现代码
Jun 08 PHP
php删除页面记录 同时刷新页面 删除条件用GET方式获得
Jan 10 PHP
三种php连接access数据库方法
Nov 11 PHP
PHP下的Oracle客户端扩展(OCI8)安装教程
Sep 10 PHP
Codeigniter(CI)框架分页函数及相关知识
Nov 03 PHP
php输出xml属性的方法
Mar 19 PHP
php显示指定目录下子目录的方法
Mar 20 PHP
PHP面向对象程序设计实例分析
Jan 26 PHP
php preg_match的匹配不同国家语言实例
Dec 29 PHP
PHP中Laravel 关联查询返回错误id的解决方法
Apr 01 PHP
php使用lua+redis实现限流,计数器模式,令牌桶模式
Apr 04 PHP
PHP迭代器的内部执行过程详解
Nov 12 #PHP
PHP迭代器实现斐波纳契数列的函数
Nov 12 #PHP
PHP SPL使用方法和他的威力
Nov 12 #PHP
PHP使用SOAP调用.net的WebService数据
Nov 12 #PHP
php获取远程图片体积大小的实例
Nov 12 #PHP
php过滤XSS攻击的函数
Nov 12 #PHP
php获取新浪微博数据API实例
Nov 12 #PHP
You might like
PHP的MVC模式实现原理分析(一相简单的MVC框架范例)
2014/04/29 PHP
在Linux系统下一键重新安装WordPress的脚本示例
2015/06/30 PHP
php反射学习之依赖注入示例
2019/06/14 PHP
解决在laravel中leftjoin带条件查询没有返回右表为NULL的问题
2019/10/15 PHP
JAVASCRIPT车架号识别/验证函数代码 汽车车架号验证程序
2012/01/08 Javascript
jQuery控制Div拖拽效果完整实例分析
2015/04/15 Javascript
浅谈jQuery中height与width
2015/07/06 Javascript
JavaScript实现为input与textarea自定义hover,focus效果的方法
2015/08/21 Javascript
jquery实现九宫格大转盘抽奖
2015/11/13 Javascript
AngularJS服务service用法总结
2016/12/13 Javascript
JavaScript的事件机制详解
2017/01/17 Javascript
微信小程序开发之IOS和Android兼容的问题
2017/09/26 Javascript
angular 数据绑定之[]和{{}}的区别
2018/09/25 Javascript
js删除数组中某几项的方法总结
2019/01/16 Javascript
深入理解javascript prototype的相关知识
2019/09/19 Javascript
javascript实现雪花飘落效果
2020/08/19 Javascript
将Python代码嵌入C++程序进行编写的实例
2015/07/31 Python
python、java等哪一门编程语言适合人工智能?
2017/11/13 Python
python把1变成01的步骤总结
2019/02/27 Python
Python3使用TCP编写一个简易的文件下载器功能
2019/05/08 Python
python实现猜数字游戏
2020/03/25 Python
Pycharm2020最新激活码|永久激活(附最新激活码和插件的详细教程)
2020/09/29 Python
Python操作dict时避免出现KeyError的几种解决方法
2020/09/20 Python
python3通过subprocess模块调用脚本并和脚本交互的操作
2020/12/05 Python
python中复数的共轭复数知识点总结
2020/12/06 Python
详解如何获取localStorage最大存储大小的方法
2020/05/21 HTML / CSS
Amara美国站:英国高端家居礼品网站,世界各地的奢侈家具品牌
2017/07/26 全球购物
西班牙拥有最佳品牌的动物商店:Animalear.com
2018/01/05 全球购物
优秀研究生自我鉴定
2013/12/04 职场文书
初一英语教学反思
2014/01/11 职场文书
理想点亮人生演讲稿
2014/05/21 职场文书
国贸专业毕业求职信
2014/06/11 职场文书
先进员工事迹材料
2014/12/20 职场文书
检讨书范文500字
2015/01/28 职场文书
销售内勤岗位职责范本
2015/04/13 职场文书
公司转让协议书
2016/03/19 职场文书