【PHP】php发送邮箱验证码格式美化,样式美化

效果展示:


  • 格式美化前

  • 格式美化后

代码


大多数框架都自带有封装好的发送email方法,就不多赘述,主要写格式:

<? php// 验证码过期时间
$expire = 120;
// 发件人邮箱
$from_email = 'xx@163.com';
// 收件人
$to_email = 'to@163.com';
// 发件人名称,不设置会默认邮件地址
$from = '发件人名字';
// 邮件主题
$subject = '【'.$from.'】请查收你的验证码';
$title = '你的验证码是';
$sm_expire = ceil($expire / 60);
$sm_expire = "将在 {$sm_expire} 分钟内有效";
// 验证码
$code = rand(1000, 9999);
// 邮件正文,格式化代码
$message = sendHtml($title,$code,$sm_expire); // 发邮件
$obj = new Email();
$result = $obj->from(from_email, $from) // 第一个参数发件邮箱地址,第二个发件人设置->to(to_email)->subject($subject)->message($message)->send();function sendHtml($title,$code,$sm_expire){return "<style>.title {font-size: 20px;text-align: center;}.code {width: 100px;font-size: 30px;color: #35CC51; font-weight: bold; background: #fff; padding: 4px 10px;text-align: center;margin: 10px auto;border-radius: 10px;box-shadow: 0 0 10px 0px #ccc inset;}.tip {text-align: center;}</style><p class='title'>{$title}</p><p class='code'>{$code}</p><p class='tip'>{$sm_expire}</p>";
}

以上就是完整示例,只要用到的是css段,php段代码根据各框架自构即可。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/208517.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

硬件产品经理常用的ChatGPT通用提示词模板

产品策略&#xff1a;请帮助我制定一个硬件产品的产品策略。 市场调研&#xff1a;如何进行硬件产品的市场调研&#xff1f; 用户需求&#xff1a;如何确定硬件产品的用户需求&#xff1f; 产品设计&#xff1a;如何设计一个优秀的硬件产品&#xff1f; 用户体验&#xff1…

数据分析基础之《matplotlib(5)—直方图》

一、直方图介绍 1、什么是直方图 直方图&#xff0c;形状类似柱状图却有着与柱状图完全不同的含义。直方图牵涉统计学的概念&#xff0c;首先要对数据进行分组&#xff0c;然后统计每个分组内数据元的数量。在坐标系中&#xff0c;横轴标出每个组的端点&#xff0c;纵轴表示频…

无人机巡山护林,林业无人机智能助力绿色守护

随着全球环保意识的不断提高&#xff0c;无人机巡山护林已经成为解决森林巡检难题的一种独特而高效的方式。在我国&#xff0c;各地正积极探索无人机在森林防火、病虫害监测以及生态调查等领域的创新应用。随着无人机技术的不断演进&#xff0c;其在推动森林保护和可持续发展方…

HTML实现每天单词积累

注册页面 <!DOCTYPE html> <html> <head><meta charset"UTF-8"><title>注册</title><style>body {font-family: Arial, sans-serif;background-color: #f5f5f5;}form {max-width: 500px;margin: 50px auto;padding: 40px…

【Docker】进阶之路:(九)Docker网络

【Docker】从零开始&#xff1a;19.Docker网络 Docker网络模式简介bridge网络模式host网络模式none网络模式container网络模式user-defined网络模式1.创建自定义的bridge网络2.使用自定义网络 高级网络配置docker network命令 为什么要了解容器的网络模式? 首先&#xff0c;容…

spark 写入 mysql 报错

报错信息如下&#xff1a; "C:\Program Files\Java\jdk1.8.0_291\bin\java.exe" "-javaagent:D:\Hadoopruanjian\IDEA\IntelliJ IDEA 2021.3.2\lib\idea_rt.jar60971:D:\Hadoopruanjian\IDEA\IntelliJ IDEA 2021.3.2\bin" -Dfile.encodingUTF-8 -classpat…

工业级路由器在风力发电场的远程监控技术

工业级路由器在风力发电场的远程监控技术方面具有重要的应用意义。风力发电场通常由分布在广阔地区的风力发电机组组成&#xff0c;需要进行实时监测、数据采集和远程管理。工业级路由器作为网络通信设备&#xff0c;能够提供稳定可靠的网络连接和多种远程管理功能&#xff0c;…

深入探讨Go语言协程调度:GRM模型解析与优化策略

一、线程调度 1、早期单线程操作系统 一切的软件都是跑在操作系统上&#xff0c;真正用来干活&#xff08;计算&#xff09;的是 CPU早期的操作系统每个程序就是一个进程&#xff0c;直到一个程序运行完&#xff0c;才能进行下一个进程&#xff0c;就是“单进程时代”一切的程…

ES6中新增的基本数据类型----symbol

前言 Symbol 基本数据类型 独一无二得值 Symbol函数创建 接收字符串 对symbol值得描述 let s1 Symbol(描述) /*** symbol 基本数据类型 表示独一无二的值 Symbol函数创建独一无二得值 参数可以是唯一值得描述*/ let sy1 Symbol();//创建好一个独一无二得值 let sy2 Symbo…

EXP-00056: 遇到 ORACLE 错误 12154 ORA-12154: TNS: 无法解析指定的连接标识符

exp oas/oasoas filed:\daochu.dmp owner(s) 导出特定用户 //exp 用户名/密码数据库 filed:\daochu.dmp owner(用户名) 1.重启oracle监听 cmd 中输入 services.msc 找到服务&#xff1a;OracleOraDb10g_home1TNSListener 与 OracleServiceORCL。 把两个服务启动. 若未解决…

Vue 3 + Tailwind CSS:打造现代化项目的完美组合

Vue 3 Tailwind CSS&#xff1a;打造现代化项目的完美组合 本篇教程将向你介绍如何将 Tailwind CSS 与 Vue 3 项目搭配使用&#xff0c;为你的项目提供现代化的 UI 呈现和开发体验。通过本文的逐步演示和示例代码&#xff0c;你将很快掌握在 Vue 3 中集成和使用 Tailwind CSS…

SCI一区级 | Matlab实现GWO-CNN-BiLSTM-selfAttention多变量多步时间序列预测

SCI一区级 | Matlab实现GWO-CNN-BiLSTM-selfAttention多变量多步时间序列预测 目录 SCI一区级 | Matlab实现GWO-CNN-BiLSTM-selfAttention多变量多步时间序列预测预测效果基本介绍程序设计参考资料 预测效果 基本介绍 1.Matlab实现GWO-CNN-BiLSTM-selfAttention灰狼算法优化卷…

IntelliJ idea卡顿解决,我遇到的比较管用的方案

Setttings> Build, Execution,Deployment>Debugger> Data Views> Java 取消 Enable "toString()" object view; Speed up debugging in IntelliJ Yesterday, I observed painfully slow debugging in IntelliJ. Every step over or step in took almost…

【力扣】234.回文链表2

234.回文链表2 感觉自己还是有点时间&#xff0c;然后又学了两种解法。那就一起整理一下。 法一&#xff1a;反转链表后比较 题解看我的这一篇就行&#xff08;click) 法二&#xff1a;数组双指针 思路很简单&#xff0c;就是用while循环遍历一下整个链表将对应的值复制到…

2023年12月8日:UI登陆界面

作业 头文件 #ifndef WIDGET_H #define WIDGET_H#include <QWidget> #include <QMovie> #include <QPushButton> #include <QDebug>QT_BEGIN_NAMESPACE namespace Ui { class Widget; } QT_END_NAMESPACEclass Widget : public QWidget {Q_OBJECTpub…

GO语言开始

GO语言开始 下载windows版本安装后查看 是否安装成功下载GO的集成开发工具第一个GO程序 Go官网地址&#xff1a;https://golang.org/ Go 官方镜像站&#xff08;推荐&#xff09;:https://golang.google.cn/dl/ 下载windows版本 安装后查看 是否安装成功 下载GO的集成开发工具…

鸿蒙原生应用开发【分布式数据对象】

01、什么是分布式数据对象 在可信组网环境下&#xff0c;多个相互组网认证的设备将各自创建的对象加入同一个 sessionId&#xff0c;使得加入的多个数据对象之间可以同步数据&#xff0c;也就是说&#xff0c;当某一数据对象属性发生变更时&#xff0c;其他数据对象会检测到这…

前端知识笔记(三十七)———Django与Ajax

特点&#xff1a; 异步提交 局部刷新 例子&#xff1a;github注册 动态获取用户名实时的跟后端确认并实时的展示到前端&#xff08;局部刷新&#xff09; 朝后端发送请求的方式 1.浏览器地址栏直接输入url回车 -----》get请求 2.a标签的href属性 -----》get请求 3…

pcl-3 pcl结合opencv做svm分类(法向量特征数据)

后续使用了fpfh特征作为训练数据&#xff0c;遇到了一些困难 首先是flann冲突&#xff0c;这个将opcv中的flann都改成了flann2就可以运行 后面在将得到的33特征值进行训练的时候一直内存超限&#xff0c;传输的不太好&#xff0c;到现在还是不行&#xff0c;改了三天还是没有改…

Flink 系列文章汇总索引

Flink 系列文章 一、Flink 专栏 本专栏系统介绍某一知识点&#xff0c;并辅以具体的示例进行说明。 本专栏的文章编号可能不是顺序的&#xff0c;主要是因为写的时候顺序没统一&#xff0c;但相关的文章又引入了&#xff0c;所以后面就没有调整了&#xff0c;按照写文章的顺…