【Thinkphp 5】 整合邮箱类 phpmailer实现邮件发送
第一步:下载phpmailer文件,主要用到的文件只有箭头指向的两个,thinkphp5中,把class.phpmailer.php改成了phpmailer.php
第二步: 将phpmailer文件夹放到extend 扩展类库目录(可定义)中
第三步:打开phpmailer.php 和 class.smtp.php文件,最前面加上命名空间(TP5 必须要加上命名空间)
namespace phpmailer; //phpmailer 这是文件夹的名称
第四步:控制器中可以直接调用,调用前需要先引入phpmailer库文件
use phpmailer\phpmailer; //引入extend/phpmailer中的phpmailer.php邮件发送类文件
由于邮箱发送可以多个地方多次调用,我就把他封装到common.php公共应用方法中
common.php文件内容如下
use phpmailer\phpmailer; //引入extend中的邮件发送类文件
// 应用公共文件 /**
* @param $sjr 收件人
* @param $title 标题
* @param $content 邮件内容
*
* @throws \phpmailer\phpmailerException
*/
function sendEmail($sjr,$title,$content){
try {
$mail = new PHPMailer(true);
$mail->IsSMTP(); // 设定使用SMTP服务,SMTP简单邮件传输协议 $mail->CharSet='UTF-8'; //设置邮件的字符编码,这很重要,不然中文乱码
$mail->SMTPAuth = true; //开启认证
$mail->Port = 25; // SMTP服务器的端口号
$mail->Host = "smtp.163.com"; // SMTP 服务器
$mail->Username = "cj392085780@163.com"; //SMTP服务器用户名,邮箱号
$mail->Password = "11111111111"; //SMTP服务器密码 授权码
//$mail->IsSendmail(); //如果没有sendmail组件就注释掉,否则出现“Could not execute: /var/qmail/bin/sendmail ”的错误提示 $mail->AddReplyTo("cj372835766@163.com","这里输入回复邮件内容");//回复地址(收件人回复。发件人可以看到回复信息) 第一个参数是发件人邮箱,第二个为快捷回复的内容
$mail->FromName = "八神网络"; //发件人的名称
$mail->From = "cj392085780@163.com"; //发件人邮箱 $to = $sjr; //收件人地址
$mail->AddAddress($to);
$mail->Subject = $title; //邮件标题
$mail->Body = $content; //邮件内容
$mail->AltBody = "To view the message, please use an HTML compatible email viewer!"; //当邮件不支持html时备用显示,可以省略
$mail->WordWrap = 80; // 设置每行字符串的长度
//$mail->AddAttachment("f:/test.png"); //可以添加附件
$mail->IsHTML(true); $mail->Send(); //发送邮件
echo "邮件发送成功";
//return 1; //发送成功 输出1
} catch (phpmailerException $e) {
echo "邮件发送失败:".$e->errorMessage();
}
}
控制器中调用common.php中的方法实现邮箱发送
public function index()
{
$sjr='392085780@qq.com';
$title='tp5邮箱发送';
$content='你好啊';
$result=sendEmail($sjr,$title,$content); //调用common.php的方法发送邮件
//if($result==1){
// $this->success('邮件发送成功');
//}
}
主要注意的是phpmailer.php文件最后 Exception前加一个\ 就 OK 了 ,希望对大家有帮助
【Thinkphp 5】 整合邮箱类 phpmailer实现邮件发送的更多相关文章
- phpmailer实现邮件发送
phpmailer实现邮件发送 1.代码 <?php require("class.phpmailer.php"); //这个是一个smtp的php文档,网上可以下载得到 $ ...
- 利用第三方类 phpmailer 发邮件
第一.百度一下 phpmailer 随便找个 girhub 网站 download 下来即可. 第二.复制如下代码放在项目根目录,填写完整你的账号信息,即可发送邮件.就是这么简单! <?php ...
- TP5使用phpmailer实现邮件发送
1.从github下载PHPMailer,在vendor目录中新建文件夹phpmailer,将压缩包中的class.phpmailer.php和class.smtp.php复制到phpmailer中, ...
- ThinkPHP邮件发送S(Smtp + Mail + phpmailer)
三种邮件发送介绍:(Smtp,Mail以及phpmailer)ThinkPhp 框架下开发. 邮件发送配置先前准备(用该账号做测试用):(这里用新浪邮箱服务器)将自己的新浪邮箱开通 POP3/SMTP ...
- php邮件发送 phpmailer
首先要安装phpmailer开源项目. 将class.phpmailer.php转移到php文件夹下, 编写代码: <?php require("class.phpmailer.php ...
- phpMailer邮件发送
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- 怎么使用PHPMailer实现邮件的发送??
来源:http://www.ido321.com/1103.html 发送邮件是常用的功能,LZ今天在项目中也碰到了,特此分享一下. 首先,去下载PHPMailer 1.https://github. ...
- ###使用phpmailer自动邮件提醒
近期的一个小项目中需要用到邮件自动通知功能,搜了搜,发现phpmailer这个东西大家用的挺多的. 首先去sourceforge下载phpmailer,也可去我的网盘下载,我用的是5.1版本的. 看到 ...
- 使用javaMail实现简单邮件发送
一.首先你要用来发送邮件的qq邮箱需要开通pop3/smtp服务,这个可以百度一下就知道了 二.导入所需要的jar包,我使用的是maven添加依赖 <dependency> <gro ...
随机推荐
- if与while相互嵌套,菱形*的实现.py
""" * * * * * * * * * * * * * * * * * * * * ...
- 【转载】wifi一键配网smartconfig原理及应用
物联网给我们又提供了一种窃取WiFi密码的好方式:让智能设备主动断线. 同时也提供一种让智能设备连接到恶意WiFi的方式:设备一键配置功能时疯狂广播恶意WiFi的信息. 转自:http://blog. ...
- weui 中的tabbar导航
最近做微信的服务号项目,用的weui作为主要的ui,但是对于用惯了ele ui的开发者来说,文档貌似有点不友好.真是很让人头疼! 所以结合着自己做的项目,随便写一点东西. 比如说,tabbar导航的切 ...
- SDWebImage 加载显示 WebP 与性能问题
SDWebImage 加载显示 WebP 与性能问题 本文包含自定义下载操作 SDWebImageDownloaderOperation 与编码器 SDWebImageCoder.SDWebImage ...
- three.js 入门案例
最近公司需要用tree.js实现一个3D图的显示,就看了官方文档,正好有时间,就记录下来. 由于我们公司的前端框架用的是angular,所以我就把我的treejs封装在一个directives里面.后 ...
- Spring配置集群定时任务
正常配置定时任务的时候配置定时任务调度工厂的代码如下 <bean id="" class="org.springframework.scheduling.quart ...
- UEP-级联查询
级联查询在UEP中采用动态下拉的形式,cascadeid为关键字,注意jsp页面的id的相互嵌套关系,数据库字段的数值的设置,和动态下拉SQL语句的书写.本功能实现了省市区的三级联动查询
- Linux下C++/C的编译调试
这几天因为任务的原因我需要在ubuntu下编写程序.因此恶补了许多linux程序编写的知识.我分以下几个方面总结我所学的知识. gcc,g++,make命令的使用 gdb 调试 VScode的使用 c ...
- MFC中自定义消息
在头文件stdafx.h中增加一个自定义消息宏 #define WM_USER_THREADEND WM_USER + 1 在于增加新消息的窗口或对话框类的头文件中增加一个回调函数声明 afx_msg ...
- 在js中怎样获得checkbox里选中的多个值?
https://zhidao.baidu.com/question/203897221.html 思路:利用name属性值获取checkbox对象,然后循环判断checked属性(true表示被选中, ...