Thinkphp5集成阿里云短信

先去阿里云申请账号(后台地址: https://www.aliyun.com/ , 注意不是阿里大于短信平台,阿里大于已经停止新用户注册),登入控制台,创建得到keyId 和 keysecret.
从阿里云短信官网下载SDK(https://help.aliyun.com/document_detail/55359.html?spm=5176.8195934.507901.12.2NiZni)
将SDK放到thinkphp5框架的vendor目录下, 如下图:
这里写图片描述

发送短信代码如下:

private function sendSmsByAliyun()
    {
        include_once './vendor/aliyun-php-sdk-core/Config.php';
        include_once './vendor/Dysmsapi/Request/V20170525/SendSmsRequest.php';

        $accessKeyId = $this->config['sms_appkey'];//阿里云短信keyId
        $accessKeySecret = $this->config['sms_secretKey'];//阿里云短信keysecret

        //短信API产品名
        $product = "Dysmsapi";
        //短信API产品域名
        $domain = "dysmsapi.aliyuncs.com";
        //暂时不支持多Region
        $region = "cn-hangzhou";

        //初始化访问的acsCleint
        $profile = \DefaultProfile::getProfile($region, $accessKeyId, $accessKeySecret);
        \DefaultProfile::addEndpoint("cn-hangzhou", "cn-hangzhou", $product, $domain);
        $acsClient= new \DefaultAcsClient($profile);

        $request = new \Dysmsapi\Request\V20170525\SendSmsRequest;

        $request->setPhoneNumbers("138xxx");//必填-短信接收号码

        $request->setSignName("xxxx");//必填-短信签名: 如何添加签名可以参考阿里云短信或TPshop官方文档
        //必填-短信模板Code
        $request->setTemplateCode("修改手机号码");//必填-短信签名: 如何添加签名可以参考阿里云短信或TPshop官方文档
        //选填-假如模板中存在变量需要替换则为必填(JSON格式)
        $request->setTemplateParam("{\"code\":\"4894\"}");//短信签名内容:
        //选填-发送短信流水号
        //$request->setOutId("1234");

        //发起访问请求
        $resp = $acsClient->getAcsResponse($request);

        //短信发送成功返回True,失败返回false
        if ($resp && $resp->Code == 'OK') {
            return array('status' => 1, 'msg' => $resp->Code);
        } else {
            return array('status' => -1, 'msg' => $resp->Message . ' subcode:' . $resp->Code);
        }
    }

注意, 引用阿里云短信的SDK文件前要加”./”, 否则可能找不到php文件.
集成后, 测试效果如下
这里写图片描述
这里写图片描述

获取完整的demo下载地址请前往tpshop官网下载开源版

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值