热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

thinkphp6+阿里云短信验证码

一、登录阿里云开通短信验证码1、正常添加,等待审核成功,获取自己的账号的access_key以及access_secret进到下边界面创建就行

一、登录阿里云开通短信验证码

1、正常添加,等待审核成功,获取自己的账号的access_key 以及access_secret 进到下边界面创建就行,保存好

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

二、下载阿里云SDK包

composer require alibabacloud/sdk

三、thinkphp6 基本操作

1、三个文件 第一个是config下的sms。修改红框内容为自己的内容。在上面几个步骤里面都有,找下填写 。以下单成功为例子 :外面的place是自己起的名字。里面的内容是在最后一张图添加模板之后能看见的信息。签名就是第三张图的名字access_key 以及access_secret ,换成上边自己的。最下面的template_id是模板里面的在这里插入图片描述

2、\app\common 在公共文件夹下创建sms.php ,写入方法


// +----------------------------------------------------------------------
// | 胜家云 [ SingKa Cloud ]
// +----------------------------------------------------------------------
// | Copyright (c) 2016~2020 https://www.singka.net All rights reserved.
// +----------------------------------------------------------------------
// | 宁波晟嘉网络科技有限公司
// +----------------------------------------------------------------------
// | Author: ShyComet
// +----------------------------------------------------------------------
namespace app\common;use SingKa\Sms\SkSms;
use think\facade\Config;class Sms
{/*** 短信发送示例** @mobile 短信发送对象手机号码* @action 短信发送场景,会自动传入短信模板* @parme 短信内容数组*/public function sendSms($mobile, $action, $parme){//$this->SmsDefaultDriver是从数据库中读取的短信默认驱动//$SmsDefaultDriver = $this->SmsDefaultDriver ?: 'aliyun';$SmsDefaultDriver = 'aliyun';//$this->SmsConfig是从数据库中读取的短信配置//$config = $this->SmsConfig ?: Config::get('sms.'.$SmsDefaultDriver);$config = Config::get('sms.'.$SmsDefaultDriver);$sms = new sksms($SmsDefaultDriver, $config);//传入短信驱动和配置信息//判断短信发送驱动,非阿里云和七牛云,需将内容数组主键序号化//if ($this->SmsDefaultDriver == 'aliyun') {$result = $sms->$action($mobile, $parme);//} elseif ($this->SmsDefaultDriver == 'qiniu') {// $result = $sms->$action([$mobile], $parme);//} elseif ($this->SmsDefaultDriver == 'upyun') {// $result = $sms->$action($mobile, implode('|', $this->restoreArray($parme)));//} else {// $result = $sms->$action($mobile, $this->restoreArray($parme));//}if ($result['code'] == 200) {$data['code'] = 200;$data['msg'] = '短信发送成功';} else {$data['code'] = $result['code'];$data['msg'] = $result['msg'];}return $data;}// /**
// * 数组主键序号化
// *
// * @arr 需要转换的数组
// */
// public function restoreArray($arr)
// {
// if (!is_array($arr)){
// return $arr;
// }
// $c = 0;
// $new = [];
// foreach ($arr as $key => $value) {
// $new[$c] = $value;
// $c++;
// }
// return $new;
// }
}

2、最后在你需要的地方调用这个方法就行了


use app\common\Sms;$Sms = new Sms();$Sms->sendSms($tel,'place', ['code' => mt_rand(1000, 9999)]);

推荐阅读
  • 在Windows系统中安装TensorFlow GPU版的详细指南与常见问题解决
    在Windows系统中安装TensorFlow GPU版是许多深度学习初学者面临的挑战。本文详细介绍了安装过程中的每一个步骤,并针对常见的问题提供了有效的解决方案。通过本文的指导,读者可以顺利地完成安装并避免常见的陷阱。 ... [详细]
  • 在软件开发过程中,经常需要将多个项目或模块进行集成和调试,尤其是当项目依赖于第三方开源库(如Cordova、CocoaPods)时。本文介绍了如何在Xcode中高效地进行多项目联合调试,分享了一些实用的技巧和最佳实践,帮助开发者解决常见的调试难题,提高开发效率。 ... [详细]
  • Composer 无法加载本地第三方库?如何解决这一常见问题 ... [详细]
  • JavaScript XML操作实用工具类:XmlUtilsJS技巧与应用 ... [详细]
  • 在 Mac 上配置 NDK
    本文详细介绍了如何在 Mac 上配置 Android NDK,包括设置环境变量和解决常见问题的方法。 ... [详细]
  • 本文详细介绍了如何在PHP中记录和管理行为日志,包括ThinkPHP框架中的日志记录方法、日志的用途、实现原理以及相关配置。 ... [详细]
  • 本文节选自《NLTK基础教程——用NLTK和Python库构建机器学习应用》一书的第1章第1.2节,作者Nitin Hardeniya。本文将带领读者快速了解Python的基础知识,为后续的机器学习应用打下坚实的基础。 ... [详细]
  • Android 构建基础流程详解
    Android 构建基础流程详解 ... [详细]
  • MATLAB字典学习工具箱SPAMS:稀疏与字典学习的详细介绍、配置及应用实例
    SPAMS(Sparse Modeling Software)是一个强大的开源优化工具箱,专为解决多种稀疏估计问题而设计。该工具箱基于MATLAB,提供了丰富的算法和函数,适用于字典学习、信号处理和机器学习等领域。本文将详细介绍SPAMS的配置方法、核心功能及其在实际应用中的典型案例,帮助用户更好地理解和使用这一工具箱。 ... [详细]
  • 卓盟科技:动态资源加载技术的兼容性优化与升级 | Android 开发者案例分享
    随着游戏内容日益复杂,资源加载过程已不仅仅是简单的进度显示,而是连接玩家与开发者的桥梁。玩家对快速加载的需求越来越高,这意味着开发者需要不断优化和提升动态资源加载技术的兼容性和性能。卓盟科技通过一系列的技术创新,不仅提高了加载速度,还确保了不同设备和系统的兼容性,为用户提供更加流畅的游戏体验。 ... [详细]
  • 本文详细介绍了批处理技术的基本概念及其在实际应用中的重要性。首先,对简单的批处理内部命令进行了概述,重点讲解了Echo命令的功能,包括如何打开或关闭回显功能以及显示消息。如果没有指定任何参数,Echo命令会显示当前的回显设置。此外,文章还探讨了批处理技术在自动化任务执行、系统管理等领域的广泛应用,为读者提供了丰富的实践案例和技术指导。 ... [详细]
  • 在Ubuntu系统中安装Android SDK的详细步骤及解决“Failed to fetch URL https://dlssl.google.com/”错误的方法
    在Ubuntu 11.10 x64系统中安装Android SDK的详细步骤,包括配置环境变量和解决“Failed to fetch URL https://dlssl.google.com/”错误的方法。本文详细介绍了如何在该系统上顺利安装并配置Android SDK,确保开发环境的稳定性和高效性。此外,还提供了解决网络连接问题的实用技巧,帮助用户克服常见的安装障碍。 ... [详细]
  • 在 Linux 环境下,多线程编程是实现高效并发处理的重要技术。本文通过具体的实战案例,详细分析了多线程编程的关键技术和常见问题。文章首先介绍了多线程的基本概念和创建方法,然后通过实例代码展示了如何使用 pthreads 库进行线程同步和通信。此外,还探讨了多线程程序中的性能优化技巧和调试方法,为开发者提供了宝贵的实践经验。 ... [详细]
  • Android中将独立SO库封装进JAR包并实现SO库的加载与调用
    在Android开发中,将独立的SO库封装进JAR包并实现其加载与调用是一个常见的需求。本文详细介绍了如何将SO库嵌入到JAR包中,并确保在外部应用调用该JAR包时能够正确加载和使用这些SO库。通过这种方式,开发者可以更方便地管理和分发包含原生代码的库文件,提高开发效率和代码复用性。文章还探讨了常见的问题及其解决方案,帮助开发者避免在实际应用中遇到的坑。 ... [详细]
  • Android Studio 安装指南:详细步骤与常见问题解答
    Android Studio 安装指南:详细步骤与常见问题解答 ... [详细]
author-avatar
黄姐佛光普照_516
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有