Maison  >  Article  >  développement back-end  >  Exemple de développement d'interface SMS aliyun, exemple de développement d'interface SMS thkinkphp

Exemple de développement d'interface SMS aliyun, exemple de développement d'interface SMS thkinkphp

PHP中文网
PHP中文网original
2017-09-01 16:44:252184parcourir

Pour l'adresse complète de téléchargement de la démo, veuillez vous rendre sur le site officiel de TPshop pour télécharger
Demandez une clé SMS, une signature SMS et ajoutez un modèle de SMS (pour les méthodes d'ajout spécifiques, veuillez vous référer à Alibaba. Pour les SMS, veuillez vous référer à le document officiel)
Placez le SDK dans le répertoire du fournisseur du framework thinkphp5, comme indiqué ci-dessous :

Exemple de développement dinterface SMS aliyun, exemple de développement dinterface SMS thkinkphp

Le code pour l'envoi de SMS est le suivant :

private function sendSmsByAliyun()
    {
        include_once './vendor/aliyun-php-sdk-core/Config.php';
        include_once './vendor/Dysmsapi/Request/V20170525/SendSmsRequest.php';
        $accessKeyId = $this->config['sms_appkey'];//阿里云短信keyId
        $accessKeySecret = $this->config['sms_secretKey'];//阿里云短信keysecret
        //短信API产品名
        $product = "Dysmsapi";
        //短信API产品域名
        $domain = "dysmsapi.aliyuncs.com";
        //暂时不支持多Region
        $region = "cn-hangzhou";
        //初始化访问的acsCleint
        $profile = \DefaultProfile::getProfile($region, $accessKeyId, $accessKeySecret);
        \DefaultProfile::addEndpoint("cn-hangzhou", "cn-hangzhou", $product, $domain);
        $acsClient= new \DefaultAcsClient($profile);
        $request = new \Dysmsapi\Request\V20170525\SendSmsRequest;
        $request->setPhoneNumbers("138xxx");//必填-短信接收号码
        $request->setSignName("xxxx");//必填-短信签名: 如何添加签名可以参考阿里云短信或TPshop官方文档
        //必填-短信模板Code
        $request->setTemplateCode("修改手机号码");//必填-短信签名: 如何添加签名可以参考阿里云短信或TPshop官方文档
        //选填-假如模板中存在变量需要替换则为必填(JSON格式)
        $request->setTemplateParam("{\"code\":\"4894\"}");//短信签名内容:
        //选填-发送短信流水号
        //$request->setOutId("1234");
        //发起访问请求
        $resp = $acsClient->getAcsResponse($request);
        //短信发送成功返回True,失败返回false
        if ($resp && $resp->Code == 'OK') {
            return array('status' => 1, 'msg' => $resp->Code);
        } else {
            return array('status' => -1, 'msg' => $resp->Message . ' subcode:' . $resp->Code);
        }
    }

Notez que vous devez ajouter " avant de référencer le fichier SDK d'Alibaba Cloud SMS. /", sinon le fichier PHP risque de ne pas être trouvé
Après l'intégration, les résultats des tests sont les suivants

Exemple de développement d'interface SMS aliyun, exemple de développement d'interface SMS thkinkphp

Exemple de développement d'interface SMS aliyun, exemple de développement d'interface SMS thkinkphp


Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn