使用API接口方式调用阿里云短信接口

传入手机号,AccessKey ID,Access Key Secret,签名名称,模版代码

date_default_timezone_set('GMT');
#手机号码
$phone = '';
#短信签名名称
$signName = '';
#AccessKeyID
$appid =  '';
#AccessKeySecret
$secret = ''; 
#模板code
$tplid = '';
$tplParam = json_encode(['code' => '33887u']);
$params = [
    'AccessKeyId' => $appid,
    'Timestamp'   => date('Y-m-d\TH:i:s\Z'),
    'SignatureMethod'=>'HMAC-SHA1',
    'SignatureVersion'=> '1.0',
    'SignatureNonce'  => uniqid(),//随机码
    //'Signature' => ''
    'Format'      => 'JSON',
    //业务参数
    'Action'       => 'SendSms',
    'Version'     => '2017-05-25',
    'RegionId'    => 'cn-hangzhou',
    'PhoneNumbers' => $phone,//接收号码
    'SignName'      => $signName,//签名
    'TemplateCode'  => $tplid,//模板id
    'TemplateParam' => $tplParam,

];
//排序
ksort($params);
//http_build_query($params)
$str = '';
foreach($params as $k => $v){
    $str .= urlencode($k) . '=' . urlencode($v) . '&';
}
$str = substr($str,0,-1);
$str = str_replace(['+','*','%7E'],['%20','%2A','~'],$str );
$new_str = 'GET&' . urlencode('/') . '&' . urlencode($str);
$sign = base64_encode(hash_hmac('sha1', $new_str, $secret . '&',true));
$sign = urlencode($sign);
$url = 'http://dysmsapi.aliyuncs.com/?Signature=' . $sign . '&'.  $str; 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值