阿里云短信发送

一、准备工作:
1、下载SDK工具包
https://help.aliyun.com/document_detail/55359.html?spm=5176.doc55451.2.6.BgY073
2、申请ID和Secret
3、申请签名
https://dysms.console.aliyun.com/dysms.htm?spm=5176.8195934.499931.1.64sayk#/
4、选择短信模板

二、封装函数
/**
* 发送短信
* @param $mobile 手机号码
* @param $code 验证码
* @return bool 短信发送成功返回true失败返回false
*/
function sendSMS($mobile, $code){
// 引用三个文件Config, DefaultProfile, SendSmsRequest,根据文件路径填写
vendor('aliyunSms.aliyun-php-sdk-core.Config');
vendor('aliyunSms.aliyun-php-sdk-core.Profile.DefaultProfile');
vendor('aliyunSms.Dysmsapi.Request.V20170525.SendSmsRequest');

//此处需要替换成自己的AK信息
$accessKeyId = "yourAccessKeyId";
$accessKeySecret = "yourAccessKeySecret";
//短信API产品名(短信产品名固定,无需修改)
$product = "Dysmsapi";
//短信API产品域名(接口地址固定,无需修改)
$domain = "dysmsapi.aliyuncs.com";
//暂时不支持多Region(目前仅支持cn-hangzhou请勿修改)
$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;
//必填-短信接收号码。支持以逗号分隔的形式进行批量调用,批量上限为1000个手机号码,批量调用相对于单条调用及时性稍有延迟,验证码类型的短信推荐使用单条调用的方式
$request->setPhoneNumbers($mobile);
//必填-短信签名
$request->setSignName("云通信"); // 可到官网申请
//必填-短信模板Code
$request->setTemplateCode("SMS_0001"); // 根据需求填写相应的模板id
//选填-假如模板中存在变量需要替换则为必填(JSON格式),友情提示:如果JSON中需要带换行符,请参照标准的JSON协议对换行符的要求,比如短信内容中包含\r\n的情况在JSON中需要表示成\\r\\n,否则会导致JSON在服务端解析失败
$request->setTemplateParam("{\"code\":$code,\"product\":\"云通信服务\"}");
//选填-发送短信流水号
$request->setOutId("1234");
//发起访问请求
$acsResponse = $acsClient->getAcsResponse($request);

if ($acsResponse && ($acsResponse->Code == "OK")) {
return true;
} else {
return false;
}
}

转载于:https://www.cnblogs.com/pandagege/p/7491534.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值