Thinkphp3.2邮件发送
第一步:加入这两个文件
第二部:在common的function中添加代码
function think_send_mail($to, $name, $subject = '', $body = '', $attachment = null){
$config = C('THINK_EMAIL');
vendor('PHPMailer.class#phpmailer'); //从PHPMailer目录导class.phpmailer.php类文件
vendor('SMTP');
$mail = new PHPMailer(); //PHPMailer对象
$mail->CharSet = 'UTF-8'; //设定邮件编码,默认ISO-8859-1,如果发中文此项必须设置,否则乱码
$mail->IsSMTP(); // 设定使用SMTP服务
$mail->SMTPDebug = $config['SMTPDEBUG']; // 关闭SMTP调试功能
// 1 = errors and messages
// 2 = messages only
$mail->SMTPAuth = true; // 启用 SMTP 验证功能
$mail->SMTPSecure = $config['SMTP_SSL']; // 使用安全协议
$mail->Host = $config['SMTP_HOST']; // SMTP 服务器
$mail->Port = $config['SMTP_PORT']; // SMTP服务器的端口号
$mail->Username = $config['SMTP_USER']; // SMTP服务器用户名
$mail->Password = $config['SMTP_PASS']; // SMTP服务器密码
$mail->SetFrom($config['FROM_EMAIL'], $config['FROM_NAME']);
$replyEmail = $config['REPLY_EMAIL']?$config['REPLY_EMAIL']:$config['FROM_EMAIL'];
$replyName = $config['REPLY_NAME']?$config['REPLY_NAME']:$config['FROM_NAME'];
$mail->AddReplyTo($replyEmail, $replyName);
$mail->Subject = $subject;
$mail->AltBody = "为了查看该邮件,请切换到支持 HTML 的邮件客户端";
$mail->MsgHTML($body);
$mail->AddAddress($to, $name);
if(is_array($attachment)){ // 添加附件
foreach ($attachment as $file){
is_file($file) && $mail->AddAttachment($file);
}
}
// return $mail->Send() ? true : $mail->ErrorInfo;
return $mail->Send() ? true : false;
}
第三步: 在配置文件中加入以下配置
//邮件配置
'THINK_EMAIL' => array(
'SMTP_SSL' => '',//是否使用加密协议,使用的话值为ssl
'SMTP_HOST' => 'smtp.mxhichina.com', //SMTP服务器smtp.mxhichina.com 'SMTP_PORT' => '25', //SMTP服务器端口25 'SMTP_USER' => 'xxx', //SMTP服务器用户名 'SMTP_PASS' => 'xxx', //SMTP服务器密码 'FROM_EMAIL' => 'xxx', 'FROM_NAME' => 'xxx', //发件人名称 'TO_NAME' => 'xxx@qq.com', //发件人名称cdmo@nbinno.com 'REPLY_EMAIL' => '', //回复EMAIL(留空则为发件人EMAIL) 'REPLY_NAME' => '', //回复名称(留空则为发件人名称) 'SESSION_EXPIRE'=>'72', 'SMTPDEBUG'=> '0',//是否开启SMTP调试,0=关闭调试,1 = errors and messages,2 = messages only
),
第四步:控制器中,调用方法
$moban =
'结构式:<img src="http://www.pharmacdmo.com/'.$data['file'].'"><br>'.
'产品:'.$data['product_name'].'<br/>'.
'cas号:'.$data['cas'].'<br/>'.
'数量:'.$data['quantity'].'<br/>'.
'纯度:'.$data['purity'].'<br/>'.
'交货时间:'.$data['delivery_time'].'<br/>'.
'详情:'.$data['other_details'].'<br/>'.
'客户名称:'.$data['user_name'].'<br/>'.
'公司:'.$data['user_company'].'<br/>'.
'电话:'.$data['user_tel'].'<br/>'.
'邮箱:'.$data['user_email'].'<br/>'.
'主要应用:'.$data['what_app'];
$to_email = C('THINK_EMAIL.TO_NAME'); think_send_mail($to_email,'','询价信息',$moban);
Thinkphp3.2邮件发送的更多相关文章
- .NET开发邮件发送功能的全面教程(含邮件组件源码)
今天,给大家分享的是如何在.NET平台中开发“邮件发送”功能.在网上搜的到的各种资料一般都介绍的比较简单,那今天我想比较细的整理介绍下: 1) 邮件基础理论知识 2) ...
- J2EE 邮件发送那些事儿
距离自己写的关于java邮件发送的第一篇博客已经有很长一段时间了,现在回过头看看.虽然代码质量方面有待提高,整体结构也不怎样,但是基本思路和过程还是比较纯的.现在有空写写J2EE中邮件发送的开发,实际 ...
- 结合ABP源码实现邮件发送功能
1. 前言 2. 实现过程 1. 代码图(重) 2.具体实现 2.1 定义AppSettingNames及AppSettingProvider 2.2 EmailSenderConfiguration ...
- SSH项目里面 忘记密码的邮件发送功能
package com.xxx.util; import java.util.Date; import java.util.Properties; import javax.mail.Address; ...
- [UWP]UWP中获取联系人/邮件发送/SMS消息发送操作
这篇博客将介绍如何在UWP程序中获取联系人/邮件发送/SMS发送的基础操作. 1. 获取联系人 UWP中联系人获取需要引入Windows.ApplicationModel.Contacts名称空间. ...
- java spring 邮件发送
开发中经常会遇到发送邮件进行用户验证,或者其它推送信息的情况,本文基于spring,完成邮件的发送,主要支持普通文本邮件的发送,html文本邮件的发送,带附件的邮件发送,没有实现群发.多个附件发送等需 ...
- Java邮件发送与接收原理
一. 邮件开发涉及到的一些基本概念 1.1.邮件服务器和电子邮箱 要在Internet上提供电子邮件功能,必须有专门的电子邮件服务器.例如现在Internet很多提供邮件服务的厂商:sina.sohu ...
- c#实现邮件发送链接激活
2016-08-24 10:09:52 public void MailSend(string email) { MailMessage MyMail = new MailMessage(); MyM ...
- .Net(C#)最简单的邮件发送案例
一.序言 刚开始接触邮件发送功能的时候,在网上找的资料都挺复杂的!对于新手入门有点难(至少对于本人来说,第一次接触的时候确实不容易).这里就写一段简单的邮箱发送代码,备忘,也给新手一个参考(相关类的字 ...
随机推荐
- UITextField的文本框部分文本以*的方式来显示
#import "AppDelegate.h" @interface AppDelegate ()<UITextFieldDelegate>// 添加代理协议 @end ...
- Java-马士兵设计模式学习笔记-工厂模式-用Jdom模拟Spring
一.概述 1.目标:模拟Spring的Ioc 2.用到的知识点:利用jdom的xpath读取xml文件,反射 二.有如下文件: 1.applicationContext.xml <?xml ve ...
- Java-马士兵设计模式学习笔记-策略模式-模拟Comparable接口
一.情况 1.目标:要在专门用于排序数据的DataSorter.java中实现对所有A类,B类,C类,D类等等的排序 2.初步想法:DataSorter.java的代码如下 public class ...
- WOJ 39 塌陷的牧场
感觉……做克老师的题,都很神仙…… 还有去年一个人坐在家里写挂60分算法的惨痛记忆,凭借着一点点记忆重新写这道题. 感觉这并查集真的很神仙,仍然不会算最后的α的复杂度……自己想感觉无论如何都要挂个lo ...
- centos安装中文字体
1.查看字体列表 2.将需要上传的字体上传至linux服务器/usr/share/fonts/chinese目录下 3.修改chinese目录的权限 chmod -R /usr/share/fonts ...
- python3-字典的增删改查
# Auther: Aaron Fan info = { "stull01":"alen zhang", "stull02":"s ...
- jqgrid列动态加载
private void InitGrid(string entityName) { Session["entityName"] = entityName; ArrayList c ...
- WebAPI 请求跨域问题
本人采用的是利用CORS解决跨越问题. 首先利用Nuget 安装“microsoft.aspnet.webapi.cors”,如下图所示: 紧接着,在WebApiConfig文件中加入 config. ...
- ubuntu - 安装hive
粗略步骤: 详细参考:https://www.2cto.com/net/201804/735478.html 环境:ubunut jdk hadoop mysql 一.下载hive 二.解压( ...
- web.xml 有什么用?(Java框架)
1.每个javaEE工程中都有web.xml文件,那么它的作用是什么呢?它是每个web.xml工程都必须的吗? 一个web中可以没有web.xml文件,也就是说,web.xml文件并不是web工程 ...