ThinkPHP6短信验证码的使用

composer下载

composer require mrwanghongda/sms-sdk

代码:

use Mrwanghongda\SmsSdk\Sms\SmsFactory;

 /**
     * 短信宝
     */
    const SMS_BAO = 'bao';

    /**
     * 腾讯云
     */
    const SMS_TENCENT = 'tencent';

    /**
     * 阿里云正在开发中...
     */
    const SMS_ALIYUN = 'aliyun';


        $tel='1**********';
        $code=rand(1111,9999);
    //工厂模式
    $smsObj = (new SmsFactory(SmsFactory::SMS_BAO))->getSmsService();
    /* 必要步骤:
          * 实例化一个认证对象,入参需要传入腾讯云账户密钥对secretId,secretKey。
          * 这里采用的是从环境变量读取的方式,需要在环境变量中先设置这两个值。
          * 你也可以直接在代码中写死密钥对,但是小心不要将代码复制、上传或者分享给他人,
          * 以免泄露密钥对危及你的财产安全。
          * CAM密匙查询: https://console.cloud.tencent.com/cam/capi*/

        $config = [
            /* 填写平台对应的CAM密匙secretId,短信宝填写平台账号*/
            'secretId' 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
可以通过使用第三方短信平台的 API 来发送短信验证码。以下是一个使用阿里云短信服务的示例代码: ```php // 引入阿里云 SDK require_once __DIR__ . '/aliyun-php-sdk-core/Config.php'; use Aliyun\Core\Config; use Aliyun\Core\DefaultAcsClient; use Aliyun\Core\Profile\DefaultProfile; use Aliyun\Api\Sms\Request\V20170525\SendSmsRequest; // 配置信息 Config::load(); $accessKeyId = 'your_access_key_id'; $accessKeySecret = 'your_access_key_secret'; $signName = 'your_sign_name'; // 签名名称 $templateCode = 'your_template_code'; // 模板CODE // 发送短信验证码 $mobile = 'your_mobile_number'; $code = rand(100000, 999999); // 生成随机验证码 $paramString = '{"code":"' . $code . '"}'; // 短信模板参数 $profile = DefaultProfile::getProfile('cn-hangzhou', $accessKeyId, $accessKeySecret); $acsClient = new DefaultAcsClient($profile); $request = new SendSmsRequest(); $request->setPhoneNumbers($mobile); $request->setSignName($signName); $request->setTemplateCode($templateCode); $request->setTemplateParam($paramString); $response = $acsClient->getAcsResponse($request); // 处理响应结果 if ($response->Code == 'OK') { // 发送成功,将验证码存储到 session 或缓存中 session('sms_code', $code); echo '验证码已发送,请注意查收'; } else { echo '发送失败:' . $response->Message; } ``` 需要注意的是,上述代码中的 `your_access_key_id`、`your_access_key_secret`、`your_sign_name`、`your_template_code` 和 `your_mobile_number` 都需要根据实际情况进行替换。同时,由于阿里云 SDK 并不包含在 ThinkPHP 中,需要手动下载并添加到项目中。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值