ThinkPHP3.2.2整合PHPMailer发邮件

2024-08-21 07:38

本文主要是介绍ThinkPHP3.2.2整合PHPMailer发邮件,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1.下载PHPMailer;
2.把class.phpmailer.php,class.smtp.php取出分别重命名为PHPMailer.class.php和SMTP.class.php;
3.并把以上两个文件放到如下图位置:
目录结构
4.在Tools文件夹下建PMailer.class.php,代码如下:

<?phpnamespace Tools;
/*** PHPMailer 发邮件工具类* @author hzd*/
class PMailer {private static $CharSet = 'UTF-8'; // 设置邮件的字符编码private static $Host = 'smtp.qq.com'; // 您的企业邮局服务器private static $Username = '*******@qq.com'; // 邮局用户名(请填写完整的email地址)private static $Password = '*******'; // 邮局密码(邮箱密码)private static $From = '********@qq.com'; // 邮件发送者email地址private static $FromName = 'hzd'; // 邮件发送者姓名/*** 发邮件*/public static function send($to,$toname,$title,$message) {import("Tools.Mailer.PHPMailer");import("Tools.Mailer.SMTP");$mail = new \PHPMailer();$mail->IsSMTP(); // 使用SMTP方式发送$mail->CharSet=self::$CharSet;$mail->Host = self::$Host; //$mail->Port = 25; // 设置端口$mail->SMTPAuth = true; // 启用SMTP验证功能$mail->Username = self::$Username; $mail->Password = self::$Password; $mail->From = self::$From; $mail->FromName = self::$FromName;$mail->AddAddress($to, $toname);//收件人地址,可以替换成任何想要接收邮件的email信箱,格式是AddAddress("收件人email","收件人姓名")$mail->IsHTML(true); // set email format to HTML //是否使用HTML格式$mail->Subject = $title;//"PHPMailer测试邮件"; //邮件标题$mail->Body = $message; //邮件内容if(!$mail->Send()){return $mail->ErrorInfo;}else{return true;}   }
}

5.在控制器中直接调用即可,代码如下:

<?php
namespace Home\Controller;
use Think\Controller;
class IndexController extends Controller {public function index(){header('Content-Type:text/html;charset=utf-8');$mail = new \Tools\PMailer();$to = "*******@qq.com"; //收件人的邮箱地址$toname = "***"; //收件人的姓名(可为空)$title = '测试'; //主题$message = '<a href="http://www.baidu.com">这是一条测试信息</a>'; //发送的信息$res = $mail->send($to,$toname,$title,$message);if ($res) {echo '发送成功';}else{echo $res;}}
}

这篇关于ThinkPHP3.2.2整合PHPMailer发邮件的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1092533

相关文章

SpringBoot 整合 Grizzly的过程

《SpringBoot整合Grizzly的过程》Grizzly是一个高性能的、异步的、非阻塞的HTTP服务器框架,它可以与SpringBoot一起提供比传统的Tomcat或Jet... 目录为什么选择 Grizzly?Spring Boot + Grizzly 整合的优势添加依赖自定义 Grizzly 作为

springboot整合gateway的详细过程

《springboot整合gateway的详细过程》本文介绍了如何配置和使用SpringCloudGateway构建一个API网关,通过实例代码介绍了springboot整合gateway的过程,需要... 目录1. 添加依赖2. 配置网关路由3. 启用Eureka客户端(可选)4. 创建主应用类5. 自定

springboot整合 xxl-job及使用步骤

《springboot整合xxl-job及使用步骤》XXL-JOB是一个分布式任务调度平台,用于解决分布式系统中的任务调度和管理问题,文章详细介绍了XXL-JOB的架构,包括调度中心、执行器和Web... 目录一、xxl-job是什么二、使用步骤1. 下载并运行管理端代码2. 访问管理页面,确认是否启动成功

SpringBoot整合kaptcha验证码过程(复制粘贴即可用)

《SpringBoot整合kaptcha验证码过程(复制粘贴即可用)》本文介绍了如何在SpringBoot项目中整合Kaptcha验证码实现,通过配置和编写相应的Controller、工具类以及前端页... 目录SpringBoot整合kaptcha验证码程序目录参考有两种方式在springboot中使用k

Spring Boot 中整合 MyBatis-Plus详细步骤(最新推荐)

《SpringBoot中整合MyBatis-Plus详细步骤(最新推荐)》本文详细介绍了如何在SpringBoot项目中整合MyBatis-Plus,包括整合步骤、基本CRUD操作、分页查询、批... 目录一、整合步骤1. 创建 Spring Boot 项目2. 配置项目依赖3. 配置数据源4. 创建实体类

SpringBoot整合InfluxDB的详细过程

《SpringBoot整合InfluxDB的详细过程》InfluxDB是一个开源的时间序列数据库,由Go语言编写,适用于存储和查询按时间顺序产生的数据,它具有高效的数据存储和查询机制,支持高并发写入和... 目录一、简单介绍InfluxDB是什么?1、主要特点2、应用场景二、使用步骤1、集成原生的Influ

SpringBoot整合Canal+RabbitMQ监听数据变更详解

《SpringBoot整合Canal+RabbitMQ监听数据变更详解》在现代分布式系统中,实时获取数据库的变更信息是一个常见的需求,本文将介绍SpringBoot如何通过整合Canal和Rabbit... 目录需求步骤环境搭建整合SpringBoot与Canal实现客户端Canal整合RabbitMQSp

RabbitMQ使用及与spring boot整合

1.MQ   消息队列(Message Queue,简称MQ)——应用程序和应用程序之间的通信方法   应用:不同进程Process/线程Thread之间通信   比较流行的中间件:     ActiveMQ     RabbitMQ(非常重量级,更适合于企业级的开发)     Kafka(高吞吐量的分布式发布订阅消息系统)     RocketMQ   在高并发、可靠性、成熟度等

springboot整合swagger2之最佳实践

来源:https://blog.lqdev.cn/2018/07/21/springboot/chapter-ten/ Swagger是一款RESTful接口的文档在线自动生成、功能测试功能框架。 一个规范和完整的框架,用于生成、描述、调用和可视化RESTful风格的Web服务,加上swagger-ui,可以有很好的呈现。 SpringBoot集成 pom <!--swagge

springboot 整合swagger

没有多余废话,就是干 spring-boot 2.7.8 springfox-boot-starter 3.0.0 结构 POM.xml <?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/