<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                ## 知識點 1、配置文件 2、下載SDK工具包 3、修改common.php 4、修改user.php [TOC] 升級原來的阿里大于短信服務,只需改動三個方面即可,分別是配置文件、common.php、user.php ## 一、配置文件 位置:\application\index\config.php 代碼: ~~~ return [ 'paginate' => [ 'type' => 'layui', 'var_page' => 'page', 'list_rows' => '5', 'newstyle' => true, ], 'alidayu' => [ 'appkey' => 'LTAIOAveuelesist', 'secretKey' => '', // 請替換成自己申請的Access Key Secret 'signature' => '您的簽名',// 注意是您申請時的簽名名稱 'templatecode' => 'SMS_117522100' ], ]; ~~~ ## 二、下載SDK工具包 地址:https://help.aliyun.com/document_detail/55359.html?spm=a2c4g.11186623.2.8.42ed3a76upbzP1 文檔:https://help.aliyun.com/document_detail/55451.html?spm=5176.10629532.106.2.579a1cbeQVa4oh 位置:\extend\Alidayu\ 參照:\aliyun-dysms-php-sdk\api_demo\SmsDemo.php ## 三、修改common.php 參照修改:\aliyun-dysms-php-sdk\api_demo\SmsDemo.php ~~~ <?php use Aliyun\Core\Config; use Aliyun\Core\Profile\DefaultProfile; use Aliyun\Core\DefaultAcsClient; use Aliyun\Api\Sms\Request\V20170525\SendSmsRequest; use Aliyun\Api\Sms\Request\V20170525\QuerySendDetailsRequest; /** * 取得AcsClient * * @return DefaultAcsClient */ function getAcsClient() { $acsClient = null; //產品名稱:云通信流量服務API產品,開發者無需替換 $product = "Dysmsapi"; //產品域名,開發者無需替換 $domain = "dysmsapi.aliyuncs.com"; // TODO 此處需要替換成開發者自己的AK (https://ak-console.aliyun.com/) $accessKeyId = config('alidayu.appkey'); // AccessKeyId $accessKeySecret = config('alidayu.secretKey'); // AccessKeySecret // 暫時不支持多Region $region = "cn-hangzhou"; // 服務結點 $endPointName = "cn-hangzhou"; if($acsClient == null) { //初始化acsClient,暫不支持region化 $profile = DefaultProfile::getProfile($region, $accessKeyId, $accessKeySecret); // 增加服務結點 DefaultProfile::addEndpoint($endPointName, $region, $product, $domain); // 初始化AcsClient用于發起請求 $acsClient = new DefaultAcsClient($profile); } return $acsClient; } //阿里大于短信發送 function sendAlidayu($mobile, $code) { //載入阿里大于 include EXTEND_PATH . 'Alidayu/vendor/autoload.php'; // 加載區域結點配置 Config::load(); // 初始化SendSmsRequest實例用于設置發送短信的參數 $request = new SendSmsRequest(); // 必填,設置短信接收號碼 $request->setPhoneNumbers($mobile); // 必填,設置簽名名稱,應嚴格按"簽名名稱"填寫,請參考: https://dysms.console.aliyun.com/dysms.htm#/develop/sign $request->setSignName(config('alidayu.signature')); // 必填,設置模板CODE,應嚴格按"模板CODE"填寫, 請參考: https://dysms.console.aliyun.com/dysms.htm#/develop/template $request->setTemplateCode(config('alidayu.templatecode')); // 可選,設置模板參數, 假如模板中存在變量需要替換則為必填項 $request->setTemplateParam(json_encode(array( // 短信模板中字段的值 "code"=>$code, // "product"=>"dsd" ), JSON_UNESCAPED_UNICODE)); // 可選,設置流水號 $request->setOutId("yourOutId"); // 選填,上行短信擴展碼(擴展碼字段控制在7位或以下,無特殊需求用戶請忽略此字段) $request->setSmsUpExtendCode("1234567"); // 發起訪問請求 $acsResponse = getAcsClient()->getAcsResponse($request); return $acsResponse; } ~~~ ## 四、修改user.php ~~~ //發送驗證碼 public function sendsms(){ //手機號 $mobile = input('mobile',0); //正則簡單判斷 if(preg_match("/^1\d{10}$/", $mobile)){ //判斷手機號是否存在 $count = Db::name('user')->where('mobile',$mobile)->count(); if($count){ //返回錯誤提示 $data['status'] = 202; $data['msg'] = '手機號已被注冊!'; return json($data); }else{ // 生成驗證碼,隨機4位 $smscode = mt_rand(1111,9999); set_time_limit(0); header('Content-Type: text/plain; charset=utf-8'); $resp = sendAlidayu($mobile, $smscode); // 判斷發送是否成功 if($resp->Code == 'OK'){ //發送成功 session('mobile', $mobile); //用于注冊時判斷 session('smscode', $smscode); //用于注冊時判斷 $data['status'] = 200; $data['msg'] = '發送成功!'.$smscode;//便于調試對比,實際使用時去掉后面驗證碼 return json($data); }else{ //返回錯誤提示 $data['status'] = 202; $data['msg'] = '發送失敗!'.$resp->Message; return json($data); } } }else{ //返回錯誤提示 $data['status'] = 202; $data['msg'] = '請輸入正確的手機號!'; return json($data); } } ~~~
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看