ThinkPHP5——接入腾讯云短信API

接入腾讯云短信API相当简单,最重要的是第一次使用腾讯云短信的话有100条免费短信可以测试,对于开发人员是足够了,下面我就教大家接入腾讯云短信。

第一步:准备工作

首先要在腾讯云短信申请短信签名短信正文模板

ThinkPHP5——接入腾讯云短信API

填写信息,大概等1-2个小时就可以申请成功。接着下载它的短信SDK(如果你安装了Composer,也可以使用Composer下载)

ThinkPHP5——接入腾讯云短信API

将腾讯云提供的SDK文件下载下来后,在extend文件夹下面新建一个文件夹命名为sms,把腾讯云SDK的src里面所有类放到sms文件夹底下
第二步:接入短信API

  use Qcloud\sms\SmsSingleSender;

  //
腾讯短信验证码 public function tenxun(){ // 短信应用 SDK AppID $appid = 1400009099; // SDK AppID 以1400开头 // 短信应用 SDK AppKey $appkey = "10747e9376c79fc1b523bf7f33dc16"; // 需要发送短信的手机号码 $phoneNumbers = input("phone"); // 短信模板 ID,需要在短信控制台中申请 $templateId = 517396; // NOTE: 这里的模板 ID`7839`只是示例,真实的模板 ID 需要在短信控制台中申请 $smsSign = "信息展示"; // NOTE: 签名参数使用的是`签名内容`,而不是`签名ID`。这里的签名"腾讯云"只是示例,真实的签名需要在短信控制台申请 try { $ssender = new SmsSingleSender($appid, $appkey); $params = [rand(1000, 9999)];//生成随机数 $result = $ssender->sendWithParam("86", $phoneNumbers, $templateId, $params, $smsSign, "", ""); $rsp = json_decode($result); return json(["result"=>$rsp->result,"code"=>$params]); } catch(\Exception $e) { echo var_dump($e); } }

遇到的问题及解决方法

问题一:$params(随机数)必须数组,这里有几个参数是根据短信模板的内容,例如:

ThinkPHP5——接入腾讯云短信API

问题二:刚引入use Qcloud\sms\SmsSingleSender,就把找不到SmsSingleSender类,原因是原来的src里面的所有类前面都加Qcloud,但我的目录是extend\sms,根本没有Qcloud,所以才报错。这样只要把sms前面加一个Qcloud目录,或者把sms里面的类的命名空间use前面都删了Qcloud就可以

ThinkPHP5——接入腾讯云短信API

上一篇:Steam游戏《Nine Parchments(九张羊皮纸)》修改器制作-[先使用CE写,之后有时间的话改用C#](2020年寒假小目标02)


下一篇:[转]iTextSharp - Drawing shapes and Graphics