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

相关文章

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/

uniapp,vite整合windicss

官方文档:https://weapp-tw.icebreaker.top/docs/quick-start/frameworks/hbuilderx 安装: npm i -D tailwindcss postcss autoprefixer# 初始化 tailwind.config.js 文件npx tailwindcss initnpm i -D weapp-tailwindcss# 假

Spring Cloud整合Seata实现分布式事务

文章目录 1.Seata1.1 官网1.2 下载1.3 通过安装包运行seata1.3.1 解压seata-server-1.3.0.zip1.3.2 修改 conf/file.conf 配置文件1.3.3 修改conf/registry.conf配置文件1.3.4 添加seata配置信息到nacos1.3.5 配置seata服务端数据库表结构1.3.6 启动seata 2.Spring

在项目SSH整合时,启动测试时报的警告!

一、tomcat 运行过程中提示: 22:11:07,082 [main] WARN  DTDEntityResolver : recognized obsolete hibernate namespace http://hibernate.sourceforge.net/. Use namespace http://www.hibernate.org/dtd/ instead. Refer

spring boot实战(番外篇)整合RabbitMQ

前言 最近几篇文章将围绕消息中间件RabbitMQ展开,对于RabbitMQ基本概念这里不阐述,主要讲解RabbitMQ的基本用法、Java客户端API介绍、spring Boot与RabbitMQ整合、 Spring Boot与RabbitMQ整合源码分析。   RabbitMQ安装   在使用消息中间件RabbitMQ之前就是安装RabbitMQ。   安装erlang:yum i

Spring之——整合Redis序列化方式StringRedisSerializer、FastJsonRedisSerializer和KryoRedisSerializer

当我们的数据存储到Redis的时候,我们的键(key)和值(value)都是通过Spring提供的Serializer序列化到数据库的。RedisTemplate默认使用的是JdkSerializationRedisSerializer,StringRedisTemplate默认使用的是StringRedisSerializer。 Spring Data JPA为我们提供了下面的Serializ

Struts2和Spring整合中出现的问题

今天做了一个Struts2和Spring整合的练习,中间出了一点问题,贴出来供其它人参考。(该文章写于2010年) 代码写好后启动Tomcat服务器时报错: 严重: Exception starting filter struts2java.lang.RuntimeException: java.lang.RuntimeException: java.lang.RuntimeExceptio

Spring整合FreeMarker本地化动态设置

Spring整合FreeMarker进行国际化的过程很简单,将spring-webmvc里的org/springframework/web/servlet/view/freemarker下的spring.ftl include到各个要国际化的ftl文件里就行了,比如将这个spring.ftl复制在ftl文件目录的common下,可以这样直接在ftl里include进来 <#import "