• thinkphp整合系列之短信验证码、订单通知


    现在这个短信通知泛滥的年代;应用如果没有个短信注册;你都不敢说你是搞开发的;

    这个验证码搞起来是不难的;但是如果刚接触也是有点不知从哪下手的迷茫;

    先讲下概念;

    要想发送验证码;需要至少三项;appid、key、模板id;

    appid、和key比如较容易理解;各种第三方平台都会提供的;可能叫法不一样;

    模板id就是指的短信的内容;例如【淘宝】验证码是192612,请您在5分钟内输入;

    这就是一个模板;我们发短信的时候只能改变192612、和5这两个数字;其他是固定的;

    因为政策的问题;模板需要申请并审核;一般1个工作日就过了;

    下面来具体写流程;

    1:找一个靠谱的短信验证码平台;推荐如下使用过的;下面以容联云通讯为例;其他平台一个道理;

        阿里大鱼:http://www.alidayu.com/service?spm=a3142.7802752.1.4.oAfDUZ&_t=2#sms

        容联云通讯:http://www.yuntongxun.com/

    2:注册;登录;认证;都是废话;拿到ACCOUNT SID、AUTH TOKEN;

    白俊遥博客

    3:创建一个应用;

    白俊遥博客

    4:新增一个模板;

    白俊遥博客

    5:等审核通过;拿到模板ID;好;到此;完成;

    白俊遥博客

    6:完成?想多了吧;这是刚达到了可以发送验证码的基本条件;接着下载官方的SDK;

    标题挂着Thinkphp集成短信验证码的;再不写thinkphp;想必是要被喷成渣!渣都不剩!

    所有的源代码都可以在我的开源项目bjyadmin中找到:http://git.oschina.net/shuaibai123/thinkphp-bjyadmin

    以我的开源项目为例;放在/ThinkPHP/Library/Org/Xb/RongCloud.class.php

    7:在公共函数库中增加函数/Application/Common/Common/function.php

    /**
     * 发送 容联云通讯 验证码
     * @param  int $phone 手机号
     * @param  int $code  验证码
     * @return boole      是否发送成功
     */
    function send_sms_code($phone,$code){
        //请求地址,格式如下,不需要写https://
        $serverIP='app.cloopen.com';
        //请求端口
        $serverPort='8883';
        //REST版本号
        $softVersion='2013-12-26';
        //主帐号
        $accountSid=C('RONGLIAN_ACCOUNT_SID');
        //主帐号Token
        $accountToken=C('RONGLIAN_ACCOUNT_TOKEN');
        //应用Id
        $appId=C('RONGLIAN_APPID');
     
        $rest = new OrgXbRest($serverIP,$serverPort,$softVersion);
        $rest->setAccount($accountSid,$accountToken);
        $rest->setAppId($appId);
        // 发送模板短信
        $result=$rest->sendTemplateSMS($phone,array($code,5),59939);
        if($result==NULL) {
            return false;
        }
        if($result->statusCode!=0) {
            return  false;
        }else{
            return true;
        }
    }

    8:把ACCOUNT SID、AUTH TOKEN、模板id 填到配置项/Application/Common/Conf/config.php 中

    'RONGLIAN_ACCOUNT_SID'   => '', //容联云通讯 主账号 accountSid
    'RONGLIAN_ACCOUNT_TOKEN' => '', //容联云通讯 主账号token accountToken
    'RONGLIAN_APPID'         => '', //容联云通讯 应用Id appid
    'RONGLIAN_TEMPLATE_ID'   => '', //容联云通讯 模板Id

    9:调用函数:send_sms_code('手机号','验证码');即可

    我最近在整理的开源项目已经是集成好了;这一切;只需要在配置项填空;就可以发短信了;

    童鞋们需要的可以直接git clone测试:http://git.oschina.net/shuaibai123/thinkphp-bjyadmin

  • 相关阅读:
    二叉树的最大距离
    MS CRM 2011 RibbonExport Utility下载以及实用说明
    MS CRM 2011中的解决方案——使用
    MS CRM 2011的自定义与开发(5)——关系编辑器
    MS CRM 2011 RC中的新特性(5)——定期约会
    MS CRM2011中的事件脚本——入门
    MS CRM 2011 汇总更新 3
    MS CRM 4中模拟PartyList字段的方法
    MS CRM 2011的自定义与开发(4)——属性编辑器
    MS CRM 2011中的解决方案Solution_简介
  • 原文地址:https://www.cnblogs.com/XACOOL/p/5630736.html
Copyright © 2020-2023  润新知