PHP借助phpmailer发送邮件


Posted in PHP onMay 11, 2015

本地没有发邮件的服务器,借助现成的SMTP服务器发送邮件是个不错的选择,这里使用到的工具是phpmailer ( Version 5.2.0),SMTP服务器就选gmail和163。

1. 使用gmail发送的脚本

include("class.phpmailer.php");
include("class.smtp.php");
//获取一个外部文件的内容
$mail       = new PHPMailer();
$body       = file_get_contents('contents.html');
$body       = eregi_replace("[\]",'',$body);
//设置smtp参数
$mail->IsSMTP();
$mail->SMTPAuth  = true;
$mail->SMTPKeepAlive = true;
$mail->SMTPSecure = "ssl";
$mail->Host    = "smtp.gmail.com";
$mail->Port    = 465;
//填写你的gmail账号和密码
$mail->Username  = "yourname@gmail.com";
$mail->Password  = "password";
//设置发送方,最好不要伪造地址
$mail->From    = "yourname@gmail.com";
$mail->FromName  = "Webmaster";
$mail->Subject  = "This is the subject";
$mail->AltBody  = $body;
$mail->WordWrap  = 50; // set word wrap
$mail->MsgHTML($body);
//设置回复地址
$mail->AddReplyTo("yourname@gmail.com","Webmaster");
//添加附件,此处附件与脚本位于相同目录下
//否则填写完整路径
$mail->AddAttachment("attachment.jpg");
$mail->AddAttachment("attachment.zip");
//设置邮件接收方的邮箱和姓名
$mail->AddAddress("toname@gmail.com","FirstName LastName");
//使用HTML格式发送邮件
$mail->IsHTML(true);
//通过Send方法发送邮件
//根据发送结果做相应处理
if(!$mail->Send()) {
 echo "Mailer Error: " . $mail->ErrorInfo;
} else {
 echo "Message has been sent";
}

2.使用163发送邮件的脚本

只需要更改SMTP配置和账户密码即可,SMTP配置如下

//设置smtp参数
//注意这里不需要ssl协议
$mail->IsSMTP();
$mail->SMTPAuth  = true;
$mail->SMTPKeepAlive = true;
$mail->Host    = "smtp.163.com";
$mail->Port    = 25;

在本地wampserver环境下测试通过,需要开启php_openssl 扩展。

以上所述就是本文的全部内容了,希望大家能够喜欢。

PHP 相关文章推荐
nginx+php-fpm配置文件的组织结构介绍
Nov 07 PHP
php使用websocket示例详解
Mar 12 PHP
php计算两个整数的最大公约数常用算法小结
Mar 05 PHP
PHP内核学习教程之php opcode内核实现
Jan 27 PHP
PHP编写RESTful接口
Feb 23 PHP
PHP中读取文件的几个方法总结(推荐)
Jun 03 PHP
PHP单链表的实现代码
Jul 05 PHP
PHP 闭包详解及实例代码
Sep 28 PHP
thinkphp关于简单的权限判定方法
Apr 03 PHP
Laravel中日期时间处理包Carbon的简单使用
Sep 21 PHP
PHP实现财务审核通过后返现金额到客户的功能
Jul 04 PHP
有关PHP 中 config.m4 的探索
Aug 26 PHP
PHP date函数常用时间处理方法
May 11 #PHP
护卫神php套件 php版本升级方法(php5.5.24)
May 10 #PHP
php.ini中的request_order推荐设置
May 10 #PHP
浅析iis7.5安装配置php环境
May 10 #PHP
将PHP从5.3.28升级到5.3.29时Nginx出现502错误
May 09 #PHP
php序列化函数serialize() 和 unserialize() 与原生函数对比
May 08 #PHP
php中header跳转使用include包含解决参数丢失问题
May 08 #PHP
You might like
也谈php网站在线人数统计
2008/04/09 PHP
ThinkPHP查询返回简单字段数组的方法
2014/08/25 PHP
Laravel中Facade的加载过程与原理详解
2017/09/22 PHP
php 实现简单的登录功能示例【基于thinkPHP框架】
2019/12/02 PHP
javascript FormatNumber函数实现方法
2008/12/30 Javascript
JQuery 动画卷页 返回顶部 动画特效(兼容Chrome)
2010/02/15 Javascript
Javascript公共脚本库系列(一): 弹出层脚本
2011/02/24 Javascript
JavaScript中的对象与JSON
2015/07/03 Javascript
基于jquery步骤进度条源码分享
2015/11/12 Javascript
详解AngularJS中ng-src指令的使用
2016/09/07 Javascript
js匿名函数使用&传参(实例)
2017/09/08 Javascript
详解使用Typescript开发node.js项目(简单的环境配置)
2017/10/09 Javascript
基于IView中on-change属性的使用详解
2018/03/15 Javascript
解决vue 中 echart 在子组件中只显示一次的问题
2018/08/07 Javascript
Vue.directive使用注意(小结)
2018/08/31 Javascript
Vue中使用方法、计算属性或观察者的方法实例详解
2018/10/31 Javascript
Vue $mount实战之实现消息弹窗组件
2019/04/22 Javascript
jQuery 筛选器简单操作示例
2019/10/02 jQuery
vue + elementUI实现省市县三级联动的方法示例
2019/10/29 Javascript
微信小程序swiper实现文字纵向轮播提示效果
2020/01/21 Javascript
[06:25]第二届DOTA2亚洲邀请赛主赛事第二天比赛集锦.mp4
2017/04/03 DOTA
Python ZipFile模块详解
2013/11/01 Python
python 统计代码行数简单实例
2017/05/04 Python
python使用opencv按一定间隔截取视频帧
2018/03/06 Python
windows下 兼容Python2和Python3的解决方法
2018/12/05 Python
Python利用heapq实现一个优先级队列的方法
2019/02/03 Python
python学习--使用QQ邮箱发送邮件代码实例
2019/04/16 Python
Python 实现将大图切片成小图,将小图组合成大图的例子
2020/03/14 Python
Python web框架(django,flask)实现mysql数据库读写分离的示例
2020/11/18 Python
Python文件名匹配与文件复制的实现
2020/12/11 Python
时尚孕妇装:Ingrid & Isabel
2019/05/08 全球购物
大学自主招生自荐信
2013/12/16 职场文书
在校硕士自我鉴定
2014/01/23 职场文书
CAD制图人员的自荐信
2014/02/07 职场文书
销售员试用期自我评价
2014/09/15 职场文书
检查机关领导群众路线教育实践活动个人整改措施
2014/10/28 职场文书