Tihinkphp3.2整合最新版阿里大鱼进行短信验证码发送
阿里大鱼最新下载地址:阿里大鱼SDK下载 或者从官网进行下载:阿里大鱼SDK官网下载
下载完成后,将压缩包内的api_sdk文件夹放到ThinkPHP\Library\Vendor目录下,修改文件名为Aliyun,若修改为其他名称,请修改命名空间!
阿里大鱼申请步骤就不说了!开始接入吧~
设置阿里大鱼配置信息:
在配置文件中配置:
'ALI_SMS' => [
'PRODUCT' => 'Dysmsapi',
'DOMAIN' => 'dysmsapi.aliyuncs.com',
'REGION' => 'cn-hangzhou',
'END_POINT_NAME' => 'cn-hangzhou',
'KEY_ID' => '你的 Access Key ID',
'KEY_SECRET' => '你的 Access Key Secret',
'SIGN_NAME' => '签名名称',
'TEMPLATE_CODE' =>'模板code',
],
设置完成以后,在function.php文件中新建发送短信函数,这里命名为sendCode:
<?php
use Aliyun\Core\Config;
use Aliyun\Core\Profile\DefaultProfile;
use Aliyun\Core\DefaultAcsClient;
use Aliyun\Api\Sms\Request\V20170525\SendSmsRequest; /**
* Created by PhpStorm.
* User: Administrator
* Date: 2018/5/2 0002
* Time: 10:20
*/ function sendCode($num,$code){
require_once '/ThinkPHP/Library/Vendor/Aliyun/vendor/autoload.php';
//加载区域结点配置
Config::load();
// 初始化用户Profile实例
$profile = DefaultProfile::getProfile(C('ALI_SMS.REGION'), C('ALI_SMS.KEY_ID'), C('ALI_SMS.KEY_SECRET'));
// 增加服务结点
DefaultProfile::addEndpoint(C('ALI_SMS.END_POINT_NAME'), C('ALI_SMS.REGION'), C('ALI_SMS.PRODUCT'), C('ALI_SMS.DOMAIN'));
// 初始化AcsClient用于发起请求
$acsClient= new DefaultAcsClient($profile);
// 初始化SendSmsRequest实例用于设置发送短信的参数
$request = new SendSmsRequest();
// 必填,设置雉短信接收号码
$request->setPhoneNumbers($num);
// 必填,设置签名名称
$request->setSignName(C('ALI_SMS.SIGN_NAME'));
// 必填,设置模板CODE
$request->setTemplateCode(C('ALI_SMS.TEMPLATE_CODE'));
// 可选,设置模板参数
$request->setTemplateParam(json_encode(array( // 短信模板中字段的值
"code"=>$code,
"product"=>"dsd"
), JSON_UNESCAPED_UNICODE));
//发起访问请求
$acsResponse = $acsClient->getAcsResponse($request);
//返回请求结果
$result = json_decode(json_encode($acsResponse),true);
return $result; }
使用,只在=在控制器中调用sendCode函数即可:
public function sendmsg(){
$phone = input('post.phone_num');
$code = rand(100000,999999);
$res = sendCode($phone,$code);
if($code == "OK"){
$data = array('msg'=>'success');
}else{
$data = array('msg'=>'error');
}
return json_encode($data);
}
效果如下所示:

原文地址:张先生的博客 http://www.zhangfayuan.cn/archives/201805041200198.html
Tihinkphp3.2整合最新版阿里大鱼进行短信验证码发送的更多相关文章
- php 阿里云短信服务及阿里大鱼实现短信验证码的发送
一:使用阿里云的短信服务 ① 申请短信签名 ②申请短信模板 ③创建Access Key,获取AccessKeyId 与 AccessKeySecret.(为了安全起见,这里建议使用子用户的Access ...
- Node 接入阿里云实现短信验证码
本文介绍在案例云开通短信服务的流程以及在Node项目中使用的方法. 一.开通阿里云短信服务 登陆阿里云,然后进入 https://dysms.console.aliyun.com/dysms.htm ...
- asp.net mvc 接入阿里大于 短信验证码发送
项目前端页面实例 第1步:登录阿里大于控制台 https://www.alidayu.com/center/user/account?spm=0.0.0.0.P1K1jG 第2步:创建应用 第3步:配 ...
- Python2-Django配置阿里大于的短信验证码接口
1.短信发送开发指南地址:https://help.aliyun.com/document_detail/55491.html?spm=a2c4g.11186623.6.568.l5zTwH 2.SD ...
- Aps.Net Core3.1 WebApi发送阿里云短信验证码
1.前言 转眼又要过了一年了 好久没写博客了,人不学就要落后,今天有时间把以前弄的发送阿里云短信验证码登录记录一下. 2.准备条件 1)去阿里云官网注册一个账号.有账号直接登录就行,以前新人好像有免费 ...
- Laravel5中使用阿里大于(鱼)发送短信验证码
在做用户注册和个人中心的安全管理时,我实现借助第三方短信平台(阿里大于(鱼))在Laravel框架中进行手机验证的设置:阿里大于,是阿里通信旗下优质便捷的云通信服务平台,整合了三大运营商的通信能力,为 ...
- thinkphp整合系列之短信验证码、订单通知
现在这个短信通知泛滥的年代:应用如果没有个短信注册:你都不敢说你是搞开发的: 这个验证码搞起来是不难的:但是如果刚接触也是有点不知从哪下手的迷茫: 先讲下概念: 要想发送验证码:需要至少三项:appi ...
- 一百一十六:CMS系统之使用阿里大于sdk发送短信验证码
阿里大于短信平台:https://dysms.console.aliyun.com/dysms.htm#/overview 使用教程:https://blog.csdn.net/qq103189393 ...
- Java版阿里云通信短信发送API接口实例(新)
阿里云通信(原名阿里大于)的短信服务(Short Message Service)是阿里云为用户提供的一种通信服务的能力,支持快速发送短信验证码.短信通知等. 完美支撑双11期间2亿用户,发送6亿短信 ...
随机推荐
- Centos中git的安装
CentOS的yum源中没有git,只能自己编译安装,现在记录下编译安装的内容,留给自己备忘. 确保已安装了依赖的包 yum install curl yum install curl-deve ...
- 浅谈C语言 extern 指针与数组
/* * d.c * * Created on: Nov 15, 2011 * Author: root */ #include "apue.h" int a[] = {3,2}; ...
- Unity插件 - MeshEditor(三) 面片破碎&网格破碎
网上的unity破碎插件很多,不过想着可以以自己的方式实现也不失为一种乐趣,虽然整体的表现性上显得有些差,但也并不会影响最终的效果,接下来我大致讲解一下破碎一个物体的流程,因为用到了协程计算碎片的原因 ...
- hive的map类型处理
https://cwiki.apache.org/confluence/display/Hive/LanguageManual+UDF#LanguageManualUDF-CollectionFunc ...
- Oracle Enterprise Linux 64-bit 下Oracle11g的监听配置修改及测试步骤
测试环境:Oracle Enterprise Linux 64-bit (5.8版本) + Oracle 11g 64位 相关说明: Oracle11g64位软件的安装位置为/u01/app/orac ...
- Chapter 2 User Authentication, Authorization, and Security(7):创建和使用用户自定义服务器角色
原文出处:http://blog.csdn.net/dba_huangzj/article/details/38895357,专题目录:http://blog.csdn.net/dba_huangzj ...
- [WinForm]dataGridView自定动态设定序号列框
你可以在数据绑定或者行数有很大变化时测量一下DataGridView最大行数的行数的宽度然后在绘制代码如下 SolidBrush solidBrush; StringFormat stringForm ...
- MinerMonitorThread.java 监控线程
MinerMonitorThread.java 监控线程 package com.iteye.injavawetrust.miner; import org.apache.commons.loggin ...
- Git版本控制 — 日常使用(二)
本地使用 以下是我的一些日常操作. (1) 创建版本库 # cd /proj # git init Initialized empty Git repository in /proj/.git/ (2 ...
- Linux0.11进程切换和TSS结构
TSS 全称为task state segment,是指在操作系统进程管理的过程中,进程切换时的任务现场信息. X86体系从硬件上支持任务间的切换.为此目的,它增设了一个新段:任务状态段( ...