ThinkPHP发送邮件示例代码


Posted in PHP onOctober 08, 2016

先在GitHub找到PHPMailer 并下载
https://github.com/PHPMailer/PHPMailer

//PHPMailer的GitHub地址
将下载的PHPMailer放在ThinkPHP/Library/Vendor目录下

ThinkPHP发送邮件示例代码

在config.php下添加邮件发送配置信息

ThinkPHP发送邮件示例代码

在Common/function.php下编写mailSend(array $mailInfo)函数

/**
 * 邮件发送,可以多图片,多附件发送
 * @param $mailInfo $mailInfo = array(   //二维数组
 *    'address' => 'xx@xx.com', //收件人邮箱
 *    'subject' => '这里是邮件主题',
 *    'body' => "<h2>你好</h2> 这是一个邮件,
 *      <a href='#'>http://www.test.com</a>
 *      <hr><img alt='这是一张图片' src='cid:test_id1'>",//图片src对应图片标识
 *    'img' => array(
 *    'path' => 'test/1.jpg', //可以使用相对路径
 *    'cid' => 'test_id1', //附件内容标识
 *    'name' => '1.jpg'
 *    ),
 *    'attachment'=> array(
 *    'path' => 'text/text.txt',
 *    'name' => '附件.txt'
 *    ),
 *   );
 * @return bool
 * @throws Exception
 * @throws phpmailerException
 */
function mailSend($mailInfo){
 //date_default_timezone_set('Asia/Shanghai');//设置时区
 vendor('PHPMailer.class#phpmailer');
 $mail = new \PHPMailer();
 $mailConfig = C('MAIL_CONF');//获取mail配置
 //dump($mailConfig);exit;
 //配置项
 $mail->isSMTP();
 $mail->Host = $mailConfig['MAIL_HOST'];
 $mail->Port = $mailConfig['MAIL_PORT'];//端口
 $mail->SMTPAuth = $mailConfig['MAIL_SMTPAUTH'];//启用SMTP认证
 $mail->CharSet = $mailConfig['MAIL_CHARSET'];
 $mail->Encoding = $mailConfig['MAIL_ENCODING'];
 $mail->Username = $mailConfig['MAIL_NAME']; //发送邮箱
 $mail->Password = $mailConfig['MAIL_PWD'];
 $mail->FromName = $mailConfig['MAIL_FROMNAME']; //发件人名字
 //内容
 $mail->addAddress($mailInfo['address']);//收件人邮箱
 $mail->Subject = $mailInfo['subject']; //邮件主题
 //图片以及附件
 $mail->isHTML(true); //支持html格式内容

 //最后一个参数可不写,默认为原文件名
 $mail->addEmbeddedImage($mailInfo['img']['path'],$mailInfo['img']['cid'],$mailInfo['img']['name']);//图片路径,图片cid,图片名称
 $mail->addAttachment($mailInfo['attachment']['path'],$mailInfo['attachment']['name']);//添加附件,并指定名称
 //邮件主体
 $mail->Body = $mailInfo['body'];//发送
 return $mail->send()?true:false;
}

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

PHP 相关文章推荐
PHP+MYSQL的文章管理系统(一)
Oct 09 PHP
PHP入门速成教程
Mar 19 PHP
php 动态多文件上传
Jan 18 PHP
php中将图片gif,jpg或mysql longblob或blob字段值转换成16进制字符串
Aug 23 PHP
浅谈php扩展imagick
Jun 02 PHP
PHP生成短网址的3种方法代码实例
Jul 08 PHP
PHP的openssl加密扩展使用小结(推荐)
Jul 18 PHP
PHP简单字符串过滤方法示例
Sep 04 PHP
详解PHP编码转换函数应用技巧
Oct 22 PHP
Thinkphp 中 distinct 的用法解析
Dec 14 PHP
PHP+iframe模拟Ajax上传文件功能示例
Jul 02 PHP
php+js实现点赞功能的示例详解
Aug 07 PHP
Yii2针对游客、用户防范规则和限制的解决方法分析
Oct 08 #PHP
Netbeans 8.2与PHP相关的新特性介绍
Oct 08 #PHP
Laravel中基于Artisan View扩展包创建及删除应用视图文件的方法
Oct 08 #PHP
PHP反射API示例分享
Oct 08 #PHP
验证坐标在某坐标区域内php代码
Oct 08 #PHP
php获取远程图片并下载保存到本地的方法分析
Oct 08 #PHP
PHP基于mssql扩展远程连接MSSQL的简单实现方法
Oct 08 #PHP
You might like
PHP中isset()和unset()函数的用法小结
2014/03/11 PHP
PHP图片处理之图片旋转和图片翻转实例
2014/11/19 PHP
php如何实现只替换一次或N次
2015/10/29 PHP
在Thinkphp中使用ajax实现无刷新分页的方法
2016/10/25 PHP
thinkPHP多语言切换设置方法详解
2016/11/11 PHP
PHPMAILER实现PHP发邮件功能
2018/04/18 PHP
Javascript的一种模块模式
2008/03/22 Javascript
Mootools 1.2 手风琴(Accordion)教程
2009/09/15 Javascript
工作中常用到的JS表单验证代码(包括例子)
2010/11/11 Javascript
Jquery实现简单的动画效果代码
2012/03/18 Javascript
Jquery 表单验证类介绍与实例
2013/06/09 Javascript
js二维数组排序的简单示例代码
2014/01/24 Javascript
JavaScript实现自动生成网页元素功能(按钮、文本等)
2015/11/21 Javascript
jQuery遮罩层实现方法实例详解(附遮罩层插件)
2015/12/08 Javascript
JavaScript里 ==与===区别详解
2016/08/16 Javascript
jquery 正整数数字校验正则表达式
2017/01/10 Javascript
Bootstrap弹出框(Popover)被挤压的问题小结
2017/07/11 Javascript
Vue模拟数据,实现路由进入商品详情页面的示例
2018/08/31 Javascript
如何从0开始用node写一个自己的命令行程序
2018/12/29 Javascript
Vue实现点击显示不同图片的效果
2019/08/10 Javascript
Python使用迭代器打印螺旋矩阵的思路及代码示例
2016/07/02 Python
python tkinter库实现气泡屏保和锁屏
2019/07/29 Python
pycharm使用技巧之自动调整代码格式总结
2020/11/04 Python
CheapTickets泰国:廉价航班,查看促销价格并预订机票
2019/12/28 全球购物
美国健康和保健平台:healtop
2020/07/02 全球购物
教师师德教育的自我评价
2013/10/31 职场文书
会计学专业学生的求职信范文
2014/01/27 职场文书
优秀学生事迹材料
2014/02/08 职场文书
说明书格式及范文
2014/05/07 职场文书
优秀应届生求职信
2014/06/16 职场文书
美术学专业求职信
2014/07/23 职场文书
小学四年级学生评语
2014/12/26 职场文书
世界文化遗产导游词
2015/02/13 职场文书
关于艺术节的开幕致辞
2016/03/04 职场文书
MySQL外键约束(FOREIGN KEY)案例讲解
2021/08/23 MySQL
SQL Server表分区降低运维和维护成本
2022/04/08 SQL Server