图集1/2

正文 2570字数 566,455阅读


composer安装sdk
composer require alibabacloud/sdk
Run code
Cut to clipboard


    新建send_sms方法
    common.php里新建send_cms
    /** * 发送短信 */ if (!function_exists("send_sms")) { function send_sms ($params,$signName='短信签名') { if (empty($params['phone']) ||strlen($params['phone'])!=11) { throw new Exception('手机号错误'); return false; } $AccessKeyId='L*I5*****'; $Secret='z******Bxj'; // 创建客户端 AlibabaCloud\Client\AlibabaCloud::accessKeyClient($AccessKeyId, $Secret) ->regionId('cn-hangzhou') ->asDefaultClient(); try { $result = AlibabaCloud\Client\AlibabaCloud::rpc() ->product('Dysmsapi') ->version('2017-05-25') ->action('SendSms') ->host('dysmsapi.aliyuncs.com') ->options([ // 这里的参数可以在openAPI Explorer里面查看 'query' => [ 'RigionId' => 'cn_hangzhou', 'PhoneNumbers' => $params['phone'], // 输入的手机号 'SignName' => $signName, // 签名信息 'TemplateCode' => $params['code'], // 短信模板id 'TemplateParam' => $params['param'] // 可选,模板变量值,json格式 ] ]) ->request(); // print_r($result->toArray()); return $result->toArray(); } catch (ClientException $e) { throw new Exception($e->getErrorMessage() . PHP_EOL); echo $e->getErrorMessage() . PHP_EOL; } catch (ServerException $e) { throw new Exception($e->getErrorMessage() . PHP_EOL); echo $e->getErrorMessage() . PHP_EOL; } } }
    Run code
    Cut to clipboard


      控制器中调用方法
      $params = [ 'phone' => $phone, 'code' => 'SMS_23*****', 'param' => json_encode([ 'name' => $name, 'card' => $card, 'long' => $s_l_na['0'], 'lat' => $s_l_na['1'], 'time' => $s_time_str, ]) ]; $res = @send_sms($params);
      Run code
      Cut to clipboard




        thinkphp6 调用阿里云短信服务发送验证码功能实现
        thinkphp 对接阿里云短信支付,其主要是新版composer对接阿里短信
        TP6 阿里云短信SDK接口开发