<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>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                >[danger] 阿里云短信服務擴展封裝類 ``` composer require flc/dysms ``` ```php <?php // 本文件放入TP6.0的extend目錄下 extend/Dysms.php use Flc\Dysms\Client; use Flc\Dysms\Request\SendSms; // // 使用示例,返回數組 // Dysms::setConfig([ // 'signName' => 'it社區', // 'templateCode' => 'SMS_1792xxxxx', // 'accessKeyId' => 'LTAI4GJ6iaE7ij5YiGxxxxx', // 'accessKeySecret' => 'uljdxDoi8ocXNscPriqwl5xxxxx', // ]); // // $arr['result'] true 發送成功 // // $arr['result'] false 發送失敗 msg 錯誤信息 // $arr = Dysms::sendSms(150378xxxx); /** * 阿里大于短信驗證碼封裝 * composer require flc/dysms * * @author liang <23426945@qq.com> * @version 1.0.1 * @datetime 2020-07-20 * @homepage www.itqaq.com * * 阿里云短信服務默認流控 * 同一個簽名同一個手機號短信驗證碼 1條/分鐘 */ class Dysms { private static $obj; private static $config; private static $signName; private static $templateCode; /** * 私有化構造方法 * 禁止類在外部被實例化 */ private function __construct(){} /** * 設定配置參數 */ public static function setConfig($config) { // accessKey、accesssecret self::$config = [ 'accessKeyId' => $config['accessKeyId'], 'accessKeySecret' => $config['accessKeySecret'], ]; // 短信簽名 self::$signName = $config['signName']; // 短信模板ID self::$templateCode = $config['templateCode']; } /** * 傳入手機號發送短信驗證碼 * @param int $phoneNumbers 手機號 * @return array ['result' => true, 'msg' => '發送成功', 'verCode' => 370449] */ public static function sendSms($phoneNumbers) { $client = new Client(self::$config); $sendSms = new SendSms; $verCode = mt_rand(100000, 999999); $sendSms->setPhoneNumbers($phoneNumbers); $sendSms->setSignName(self::$signName); $sendSms->setTemplateCode(self::$templateCode); $sendSms->setTemplateParam(['code' => $verCode]); $sendSms->setOutId('demo'); // 返回標準類對象 發送失敗 // object(stdClass)#59 (3) { // ["Message"]=> // string(30) "觸發小時級流控Permits:5" // ["RequestId"]=> // string(36) "B76061EE-2D9A-4E46-89B9-2418E8A5555E" // ["Code"]=> // string(26) "isv.BUSINESS_LIMIT_CONTROL" // } $result = $client->execute($sendSms); // 返回結果 // array(2) { // ["result"]=> // bool(true) // ["msg"]=> // string(12) "發送成功" // } // array(3) { // ["result"]=> // bool(false) // ["code"]=> // string(26) "isv.BUSINESS_LIMIT_CONTROL" // ["msg"]=> // string(30) "觸發小時級流控Permits:5" // } if ($result->Code === 'OK') { return ['result' => true, 'msg' => '發送成功', 'verCode' => $verCode]; } else { return ['result' => false, 'code' => $result->Code, 'msg' => self::errorMsg($result->Code, $result->Message)]; } } /** * 錯誤信息code轉換中文提示 */ private static function errorMsg($code, $msg) { $errorMsg = [ 'isv.ACCOUNT_NOT_EXISTS' => '使用了錯誤的賬戶名稱或AK', 'isv.ACCOUNT_ABNORMAL' => '賬戶異常,請確認賬號信息', 'isv.MOBILE_NUMBER_ILLEGAL' => '手機號碼格式錯誤', 'isv.SMS_TEMPLATE_ILLEGAL' => '短信模板不存在,或未經審核通過', 'isv.SMS_SIGNATURE_ILLEGAL' => '短信簽名不存在,或未經審核通過', 'isv.BUSINESS_LIMIT_CONTROL' => '短信發送頻率超限', 'isv.AMOUNT_NOT_ENOUGH' => '當前賬戶余額不足,請及時充值', 'SignatureDoesNotMatch' => '簽名加密錯誤,請注意accessKeyId和accessKeySecret字符串賦值正確', ]; return $errorMsg[$code] ?? $msg; } /** * 私有化克隆方法 * 禁止類的實例在外部被克隆 */ private function __clone(){} } ```
                  <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>

                              哎呀哎呀视频在线观看