一、登录阿里云,注册短信服务
1.阿里云短信服务:dysms.console.aliyun.com/overview
短信签名
短信模板
二、ThinkPHP接入阿里云短信
接入文档:help.aliyun.com/document_de…
进入文档中心,点击调试按钮
如果能够调试成功,点击左侧SDK事例进行下载即可
thinkphp 安装阿里云短信扩展
composer require alibabacloud/dysmsapi-20170525 2.0.9
三、进行发送短信
<?php
declare (strict_types = 1);
namespace app\Api\controller;
use think\Request;
use AlibabaCloud\SDK\Dysmsapi\V20170525\Dysmsapi;
use Darabonba\OpenApi\Models\Config;
use AlibabaCloud\SDK\Dysmsapi\V20170525\Models\SendSmsRequest;
class Msg
{
/**
*发送短信验证码
* @return \think\Response
*/
public function sendCode(Request $request)
{
//接收手机号参数
$phone= $request->post('phone');
//这个是验证码
$code = ['code'=>rand(1111,9999)];
//发短信
$client = self::createClient("自己key", "自己的密钥");
$sendSmsRequest = new SendSmsRequest([
"phoneNumbers" => $phone,
"signName" => "空城旧梦狂啸当歌",
"templateCode" => "SMS_221080693",
"templateParam" => json_encode($code)
]);
// 复制代码运行请自行打印 API 的返回值
$data = $client->sendSms($sendSmsRequest);
print_r($data);die;
}
/**
* 使用AK&SK初始化账号Client
* @param string $accessKeyId
* @param string $accessKeySecret
* @return Dysmsapi Client
*/
public static function createClient($accessKeyId, $accessKeySecret){
$config = new Config([
// 您的AccessKey ID
"accessKeyId" => $accessKeyId,
// 您的AccessKey Secret
"accessKeySecret" => $accessKeySecret
]);
// 访问的域名
$config->endpoint = "dysmsapi.aliyuncs.com";
return new Dysmsapi($config);
}
}