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 相关文章推荐
PHPShop存在多个安全漏洞
Oct 09 PHP
浅析PHP中的字符串编码转换(自动识别原编码)
Jul 02 PHP
php中的PHP_EOL换行符详细解析
Oct 26 PHP
PHP CURL获取cookies模拟登录的方法
Nov 04 PHP
PHP+memcache实现消息队列案例分享
May 21 PHP
php使用递归计算文件夹大小
Dec 24 PHP
php定时执行任务设置详解
Feb 06 PHP
以文件形式缓存php变量的方法
Jun 26 PHP
php版微信公众平台接口开发之智能回复开发教程
Sep 22 PHP
PHP的反射机制实例详解
Mar 29 PHP
三个思路解决laravel上传文件报错:413 Request Entity Too Large问题
Nov 13 PHP
laravel 操作数据库常用函数的返回值方法
Oct 11 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+xml实现在线英文词典之添加词条的方法
2015/01/23 PHP
PHP简单实现HTTP和HTTPS跨域共享session解决办法
2015/05/27 PHP
学习php设计模式 php实现观察者模式(Observer)
2015/12/09 PHP
PHP设计模式之装饰器(装饰者)模式(Decorator)入门与应用详解
2019/12/13 PHP
在javascript中执行任意html代码的方法示例解读
2013/12/25 Javascript
提升PHP安全:8个必须修改的PHP默认配置
2014/11/17 Javascript
JQuery选中checkbox方法代码实例(全选、反选、全不选)
2015/04/27 Javascript
Bootstrap基本布局实现方法详解
2016/11/25 Javascript
Bootstrap源码解读排版(1)
2016/12/23 Javascript
JS如何生成一个不重复的ID的函数
2016/12/25 Javascript
windows 下安装nodejs 环境变量设置
2017/02/02 NodeJs
Vue.js中兄弟组件之间互相传值实例
2017/06/01 Javascript
JavaScript实现修改伪类样式
2017/11/27 Javascript
Vue实现表格中对数据进行转换、处理的方法
2018/09/06 Javascript
vue 基于element-ui 分页组件封装的实例代码
2018/12/10 Javascript
基于JavaScript实现猜数字游戏代码实例
2020/07/30 Javascript
Vue实现随机验证码功能
2020/12/29 Vue.js
[19:14]DOTA2 HEROS教学视频教你分分钟做大人-维萨吉
2014/06/24 DOTA
Python实现导出数据生成excel报表的方法示例
2017/07/12 Python
python矩阵/字典实现最短路径算法
2019/01/17 Python
通过python实现弹窗广告拦截过程详解
2019/07/10 Python
浅谈Python中函数的定义及其调用方法
2019/07/19 Python
Python可变对象与不可变对象原理解析
2020/02/25 Python
python中adb有什么功能
2020/06/07 Python
表单button的outline在firefox浏览器下的问题
2012/12/24 HTML / CSS
最新英语专业学生求职信范文
2013/09/21 职场文书
自我鉴定书
2014/03/24 职场文书
幼儿园春季开学寄语
2014/04/03 职场文书
中班上学期幼儿评语
2014/04/30 职场文书
2014年环境卫生工作总结
2014/11/24 职场文书
保研专家推荐信范文
2015/03/25 职场文书
判断Python中的Nonetype类型
2021/05/25 Python
PostgreSQL解析URL的方法
2021/08/02 PostgreSQL
阿里云日志过滤器配置日志服务
2022/04/09 Servers
SQL Server 中的事务介绍
2022/05/20 SQL Server
SQL SERVER中的流程控制语句
2022/05/25 SQL Server