在项目中用到阿里云的短信服务,在使用阿里云提供的SDK后,踩了很多坑,费尽九牛二虎之力才调试成功。

为方便大家快速方便的使用sdk,将我自己封装的短信调用方法提供如下,方便大家参考:

1. 请自行下载php的sdk

2.创建短信签名、短信模板,云资源使用的子账号并分配相关权限

3、将SDK中api_sdk文件夹重命名后放入thinkphp5的extends目录下

4、在conmmon.php中创建公共方法sendMsg,调用SDK的发送短信API

<?php 
use Aliyun\Core\Config;  
use Aliyun\Core\Profile\DefaultProfile;  
use Aliyun\Core\DefaultAcsClient;  
use Aliyun\Api\Sms\Request\V20170525\SendSmsRequest; 
 
/**
 * @param $mobile 手机号
 * @param $tplCode 模板ID
 * @param $tplParam 短信内容
*/
function sendMsg($mobile,$tplCode,$tplParam){    
    require_once '../extend/aliyunsms/vendor/autoload.php';  
    Config::load();             //加载区域结点配置   
    $accessKeyId = config('aliYunSms.app_key');
    $accessKeySecret = config('aliYunSms.app_secret');
    $templateParam = $tplParam; //模板变量替换  
    //$signName = (empty(config('alisms_signname'))?'阿里大于测试专用':config('alisms_signname'));  
    $signName = config('aliYunSms.sign_name');
    //短信模板ID 
    $templateCode = $tplCode;   
    //短信API产品名(短信产品名固定,无需修改)  
    $product = "Dysmsapi";  
    //短信API产品域名(接口地址固定,无需修改)  
    $domain = "dysmsapi.aliyuncs.com";  
    //暂时不支持多Region(目前仅支持cn-hangzhou请勿修改)  
    $region = "cn-hangzhou";     
    // 初始化用户Profile实例  
    $profile = DefaultProfile::getProfile($region, $accessKeyId, $accessKeySecret);  
    // 增加服务结点  
    DefaultProfile::addEndpoint("cn-hangzhou", "cn-hangzhou", $product, $domain);  
    // 初始化AcsClient用于发起请求  
    $acsClient= new DefaultAcsClient($profile);  
    // 初始化SendSmsRequest实例用于设置发送短信的参数  
    $request = new SendSmsRequest();  
    // 必填,设置雉短信接收号码  
    $request->setPhoneNumbers($mobile);  
    // 必填,设置签名名称  
    $request->setSignName($signName);  
    // 必填,设置模板CODE  
    $request->setTemplateCode($templateCode);  
    // 可选,设置模板参数     
    if($templateParam) {
        $request->setTemplateParam(json_encode($templateParam));
    }
    //发起访问请求  
    $acsResponse = $acsClient->getAcsResponse($request);   
    //返回请求结果  
    $result = json_decode(json_encode($acsResponse),true); 
    return $result;  
}

5、在controller中调用sendMsg()方法,传入参数即可。
--------------------- 
作者:glx490676405 
来源:CSDN 
原文:https://blog.csdn.net/glx490676405/article/details/79402535 
版权声明:本文为博主原创文章,转载请附上博文链接!

阿里云短信thinkphp相关推荐

  1. ThinkPHP6项目基操(15.实战部分 阿里云短信redis)

    阿里云短信redis 一.安装阿里云短信SDK 二.封装到项目lib中 三.radis记录验证码 1. 安装redis服务 2. 可视化redis管理软件 3. PHP安装redis扩展 4. 配置缓 ...

  2. 最新阿里云短信服务接口类【亲测成功】

    阿里大于 最新的阿里云短信接口,适用于阿里大于搬家以后的情况. 之前一直用阿里大于的短信接口,最近上项目时发现阿里大于悄悄地搬家到了阿里云!阿里云的SDK文件繁多,看得一头雾水!下面代码是最新的可适用 ...

  3. tpshop 阿里云短信sdk使用和带链接短信实现

    tpshop 阿里云短信sdk使用 创建keyId 和 keysecret,下载sdk 先去阿里云申请账号(后台地址: https://www.aliyun.com/ , 注意不是阿里大于短信平台), ...

  4. Thinkphp3.2开发阿里云短信验证码

    之前一直使用的是创蓝253的短信验证码,开发起来比较方便,不想阿里云这么复杂.有兴趣的同学可以去看一下创蓝253的短信验证码(https://www.253.com). 今天主要说一下阿里云的短信验证 ...

  5. ThinkPHP5.1接入阿里云短信服务(原大鱼最新版)指导

    ♘背景 随着科技发展的推动,曾经充满温馨问候与回忆的短信业务,如今绝大多数局限于 验证码发送.诈骗/骚扰信息.业务推送 的使用 而作为一名IT搬砖的码农,对于第三方服务的接入也是必须掌握的技能,此处介 ...

  6. 微信小程序云开发,使用阿里云短信服务,搜索员工生日定期发送短信。

    相关API文档地址: 阿里云短信服务API文档地址 小程序云开发云函数正则匹配API文档地址 小程序云开发云函数定时触发器 1.登录阿里云,购买短信服务并添加签名和模板 2., 登录阿里云,鼠标放在右 ...

  7. 阿里云短信验证解决方案(java版)(redis存储)

    阿里云短信验证解决方案(java版)(redis存储) 参考文章: (1)阿里云短信验证解决方案(java版)(redis存储) (2)https://www.cnblogs.com/Amos-Tur ...

  8. 阿里云短信发送触发天级流量及解决办法

    前言 今天小项目里引入了阿里云短信.调试过程中,突然不发短信了.发现接口返回信息,触发天级流量限制.以下是原因和解决办法. 原因 短信发送有默认的频率限制 限制如下: 短信验证码 :使用同一个签名,对 ...

  9. legend3---PHP使用阿里云短信服务

    legend3---PHP使用阿里云短信服务 一.总结 一句话总结: 使用步骤照官方文档,代码拷贝即可 1.php使用阿里云短信服务的步骤? 入驻阿里云->开通短信服务->获取Access ...

最新文章

  1. can‘t resolve symbol xxx
  2. ad network
  3. MongoDB 日志文件过大的解决方法
  4. python如何进行垃圾回收_python垃圾回收机制
  5. 嵌入式MicroFlighter 之STM32F103学习——编写第一个STM32程序
  6. Swift 4.2进入最后开发阶段,为Swift 5铺平道路
  7. android qq 登陆 简书,第三方登录 — QQ登录
  8. 从 MQL4 迁移到 MQL5
  9. 动态规划之背包问题——完全背包
  10. 计算机日志文件事件ID,教程分享:如何在Windows上对用户配置文件服务事件ID进行故障排除!...
  11. 教你来使用雪碧图(CSS sprite)
  12. ES6——Promise笔记
  13. Java中的XML解析
  14. python角谷猜想递归实现_第三周函数的递归---编程作业: 递归编程练习
  15. 串口(DB9)连接线的制作方法
  16. 极光推送SDK引起的内存泄露排查
  17. 【R】【课程笔记】02+03 基于R软件的计算
  18. 传感器与变送器的区别与联系
  19. 养成记账好习惯,分享我的记账经验
  20. 系统架构——系统流程图和程序流程图的区别

热门文章

  1. 百卓网络获智慧公安实践大奖 助力中国信息化融合新篇章
  2. c语言中cr有啥作用,C语言中lt;CRgt;是什么意思?
  3. 整型常量数据 下划线分隔符
  4. DVWA关卡3:Cross Site Request Forgery (CSRF)(跨站请求伪造)
  5. Android资源目录分模块(基于gradle)
  6. Vinoteka for mac(酒厂管理软件)
  7. shell 截取最后一个参数及字符截取
  8. JSP+MySQL绿色环境保护网站的设计于实现
  9. java printwriter 文件,java使用PrintWriter写文件,javaprintwriter写,下面示例代码演示使用Pr...
  10. 优思学院祝你冬至快乐!