1. PHPMailer

在自己项目引入核心类库文件

require_once "class.phpmailer.php";
require_once "class.smtp.php";

2. 集成ThinkPHP

2.1 类库重命名

我用的框架是thinkphp,所以我把类库文件重命名

class.phpmailer.php 重命名为 PHPMailer.class.php

class.smtp.php 重命名为 SMTP.class.php

2.2 配置SMTP服务器

// smtp服务器配置
'SMTP_SERVER' =>array(
'CharSet'    => 'UTF-8',  //编码格式
'SMTPSecure' => 'ssl',   //邮件协议
'Port' => 465,    //smtp服务器端口
'Host' => '',    //smtp服务器地址
'Username' => '',    //邮箱登录账户
'Password' => '',    //smtp授权码
'From' => '',    //邮件发送邮箱
'FromName' => '',    //发件人名称
),

2.3 使用

use Org\Mailer\PHPMailer;
use Org\Mailer\SMTP; //在控制器中使用的时候先读取SMTP配置(thinkphp用C函数读取配置)
$smtpConfig = C( 'SMTP_SERVER' );
$smtpConfig = C( 'SMTP_SERVER' ); // 发送邮件
try {
$mail = new PHPMailer( true );
$mail->IsSMTP();
$mail->CharSet = $smtpConfig[ 'CharSet' ];      //邮件字符编码
$mail->SMTPSecure = $smtpConfig[ 'SMTPSecure' ];   //邮件传输协议
$mail->Port = $smtpConfig[ 'Port' ];       //SMTP服务器端口
$mail->Host = $smtpConfig[ 'Host' ];       //SMTP服务器地址
$mail->Username = $smtpConfig[ 'Username' ];    //邮箱登录帐号
$mail->Password = $smtpConfig[ 'Password' ];    //SMTP授权码
//$mail->AddReplyTo("phpddt1990@163.com","mckee");  //回复地址
$mail->From = $smtpConfig[ 'From' ];   //邮件发送人邮箱
$mail->FromName = $smtpConfig[ 'FromName' ];   //邮件发送人昵称
$mail->SMTPAuth = true;   //开启认证
//$mail->SMTPDEBUG = 0;   //关闭debug
$to = "";           //邮件收件人邮箱
$mail->AddAddress( $to );
$mail->Subject = "";            //邮件标题
$mail->Body = ""                     //邮件正文
// $mail->AltBody = "To view the message, please use an HTML compatible email viewer!"; //当邮件不支持html时备用显示,可以省略
$mail->WordWrap = 200; // 设置每行字符串的长度
//$mail->AddAttachment("f:/test.png"); //添加附件
$mail->IsHTML( true );
$mail->Send();
$this->ajaxReturn( 'mailVerify' );
} catch ( phpmailerException $e ) {
$this->ajaxReturn( false );
}

PHP自动发送邮件的更多相关文章

  1. 【C#】新建服务自动发送邮件

    ---windows服务,---自动发送邮件 邮件发送code #region 发送邮件函数 public void SendMailUseZj() { System.Net.Mail.MailMes ...

  2. Jenkins配置自动发送邮件,成功!

    Jenkins自动发送邮件配置: 打开"系统管理"--"系统设置" 在"Jenkins Location"设置系统管理员地址(重要:不能省略 ...

  3. python+selenium生成测试报告后自动发送邮件

    标签(空格分隔): 自动化测试 运行自动化脚本后,会产生测试报告,而将测试报告自动发送给相关人员,能够让对方及时的了解测试情况,查看测试结果. 整个脚本包括三个部分: 生成测试报告 获取最新的测试报告 ...

  4. VBA控制outlook自动发送邮件(转)

    使用Excel VBA实现Outlook自动发送邮件 | 在工作上我们都会遇到批量发送邮件的情况,面对重复而规律性的工作,可以使用Excel的VBA实现自动批量化发送邮件.大大减小工作时间,提升工作效 ...

  5. Jenkins进阶之自动发送邮件的Default Content设置模板

    分享一个简洁实用的Jenkins项目邮件管理系统的"Default Content"设置模板 配置如下: <h1><center><font colo ...

  6. VBS 自动发送邮件

    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 3 ...

  7. python☞自动发送邮件

    一.SMTP 协议 SMTP(Simple Mail Transfer Protocol)是简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式 二.smtplib ...

  8. jenkins配置自动发送邮件,抄送

    1.安装插件.系统管理-安装插件:可选插件:搜索Email Extension 2.设置全局变量.系统管理-系统设置:a.Jenkins Location 设置发送方邮件--- b.Extended ...

  9. 【转】2、Jenkins构建完成自动发送邮件

    1.开通163邮箱的授权码服务,和SMTP服务.百度找教程.2.安装 Email Extension Plugin 插件,已安装或版本自带可跳过此步骤.3.进入系统管理–系统设置首先配置 Jenkin ...

  10. 使用mutt自动发送邮件

    1.Mutt安装及环境配置 1.1.安装 sudo yum install mutt 比如你要设置邮件的发信人,需要做: sudo vim /etc/Muttrc set envelope_from= ...

随机推荐

  1. JStorm学习

    一.简介 JStorm是一个分布式实时计算引擎.JStorm是一个类似于Hadoop MapReduce的系统,用户按照指定的接口实现一个任务,然后将这个任务交给JStorm系统,JStorm将这个任 ...

  2. 8.Java web—JSP基本语法

    1)脚本标识 <%-- <%@这两都之间不能为空格 ,但page前面可以任意空格 --%> <%@ page language="java" content ...

  3. Java8 时区DateTime API

    原文:http://www.yiibai.com/java8/java8_zoneddateapi.html 时区日期时间的API正在使用当时区要被考虑时. 让我们来看看他们的操作. 选择使用任何编辑 ...

  4. Xcode not building app with changes incorporated

    Did you clean the build folder by pressing command while the cursor is on the clean option? Are you ...

  5. BUPT复试专题—最小距离查询(2013)

    题目描述 给定一个由小写字母a到z组成的字符串S,其中第i个字符为S[i](下标从0开始).你需要完成下面两个操作:INSERT c  其中c是一个待输入的字符.你需要在字符串的末尾添加这个字符.保证 ...

  6. 关于Java基础的一些笔试题总结

    针对近期腾讯.京东.网易等公司的笔试,遇到一些有关Java基础的问题,在此总结,希望能通过这几道经典问题题发散,举一反三,借此打牢基础!自己总结,望提出宝贵意见! 一.关于null的一道小题  先开开 ...

  7. lua 暂停写法

    由于lua 不支持暂停 用其他方法变相实现 -- 暂停 hock 写法 function _M.sleep(n) if n > 0 then os.execute("ping -c & ...

  8. poj(1011)——Sticks(经典的dfs+剪枝)

    题目的大致意思是: 如今有n根木棍,然后须要把它们拼成相同长度的木棍,问满足这个条件的最短的长度是多少? 想法嘛:那肯定是dfs把长度搜一遍就好,但问题的关键是这里会超时.那么就要用到剪枝的原理了. ...

  9. 解决最新版的ADT没有NDK选项的问题

    最新版的ADT不显示NDK,解决方法有两种,第一种方法在线重装一下 这种方法有一个问题就是,google的东西我们经常不能访问,解决方法可以参考http://blog.csdn.net/shi_wei ...

  10. AppFuse 3的乱码问题

    书接上回:AppFuse 3常见问题与解决方法,一个新问题:乱码! 在3.0.0版本号下,运行mvn appfuse:full-source命令后使用mvn jetty:run启动工程,页面上就出现了 ...