• thinkphp对接阿里云身份证图像识别-身份证识别-二代居民身份证OCR识别-身份证信息识别-身份证OCR识别


    thinkphp对接阿里云身份证图像识别-身份证识别-二代居民身份证OCR识别-身份证信息识别-身份证OCR识别
    Common.php

    if (!function_exists('AliIdcardAuth')) {
    
        function AliIdcardAuth($img){
            $host = "https://yixi.market.alicloudapi.com";
            $path = "/ocr/idcard";
            $method = "POST";
            $appcode = "eba038d02a6a4de187f2e7bf7997d6cc";
            $headers = [];
            array_push($headers, "Authorization:APPCODE " . $appcode);
            //根据API的要求,定义相对应的Content-Type
            array_push($headers, "Content-Type".":"."application/x-www-form-urlencoded; charset=UTF-8");
            $image=base64_encode(file_get_contents($img));
            $bodys = "image=".$image."&side=front";
            $url = $host . $path;
    
            $curl = curl_init();
            curl_setopt($curl, CURLOPT_CUSTOMREQUEST, $method);
            curl_setopt($curl, CURLOPT_URL, $url);
            curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
            curl_setopt($curl, CURLOPT_FAILONERROR, false);
            curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
            if (1 == strpos("$".$host, "https://"))
            {
                curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
                curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
            }
            curl_setopt($curl, CURLOPT_POSTFIELDS, $bodys);
            if (1 == strpos("$".$host, "https://"))
            {
                curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
                curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
            }
            curl_setopt($curl, CURLOPT_POSTFIELDS, $bodys);
            $output = curl_exec($curl);
            curl_close($curl);
    
            return $output;
    
        }
    
    
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42

    \application\member\home\Profile.php

    
    
    namespace app\member\home;
    use app\member\model\Member;
    use think\helper\Hash;
    use think\Request;
    use think\Db;
    use think\Exception;
    class Profile extends Common
    {
        public function __construct(Request $request = null)
        {
            parent::__construct($request);
            $this->assign('active', 'profile');
        }
        /*
         * 个人资料
         */
        public function index()
        {
            $mid=MID;
            if(empty($mid)){
                $mid=$this->isLogin();
            }
            $datalist=member::getMemberInfoByID($mid);
            $this->assign('info',$datalist);
            return $this->fetch();
        }
    
        /**
         * [将Base64图片转换为本地图片并保存]
         * @param  [Base64] $base64_image_content [要保存的Base64]
         * @param  [目录] $path [要保存的路径]
         */
        public function uploads(){
            $base64_image_content = $_POST['imgData'];
            $path=ROOT_PATH . 'public' . DS . 'uploads'. DS .'images';
            if (preg_match('/^(data:\s*image\/(\w+);base64,)/', $base64_image_content, $result)){
                $type = $result[2];
                $new_file = $path.DIRECTORY_SEPARATOR.date('Ymd',time()).DIRECTORY_SEPARATOR;
                if(!file_exists($new_file)){
                    mkdir($new_file, 0700);
                }
                $new_file = $new_file.time().".{$type}";
                if (file_put_contents($new_file, base64_decode(str_replace($result[1], '', $base64_image_content)))){
                    $newPicPathArr= explode(DIRECTORY_SEPARATOR,$new_file);
                    $file_path1 = array_slice($newPicPathArr, -2, 1);
                    $file_path2 = array_pop($newPicPathArr);
                    $newPicPath2 = $file_path1[0].'/'.$file_path2;
                    $newPicPath1 = '/uploads/images';
                    $newPicPath = $newPicPath1.'/'.$newPicPath2;
                    $datas['head_img']=$newPicPath;
                    Db::startTrans();
                    try{
                        $result =  Db::name('member')->where('id',MID)->update($datas);
                        if($result === false){
                            Db::rollback();
                            return json([ 'status' => 0, 'message' => '参数错误1']);
                        }else{
                            Db::commit();
                            return json(['data' => $newPicPath, 'status' => 1, 'message' => '图片上传成功']);
                        }
                    }catch(\Exception $e){
                        Db::rollback();
                        return json([ 'status' => 0, 'message' => $e->getMessage()]);
                    }
                }else{
                    return json([ 'status' => 0, 'message' => '图片上传失败']);
                }
            }else{
                return json([ 'status' => 0, 'message' => '参数错误']);
            }
        }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55
    • 56
    • 57
    • 58
    • 59
    • 60
    • 61
    • 62
    • 63
    • 64
    • 65
    • 66
    • 67
    • 68
    • 69
    • 70
    • 71
    • 72
    • 73

    /*
    * 紧急联系人
    * @captcha 验证码
    * @name 紧急联系人名
    * @mobile 紧急联系人手机
    */

    public function urgent(){
        $mid=MID;
        if(empty($mid)){
            $mid=$this->isLogin();
        }
        $post=$this->request->post();
        if(!empty($post)){
            $result = $this->validate($post, 'Member.urgent');
            if($result){
                $captcha=$post['captcha'];
                $name=$post['name'];
                $phone=$post['mobile'];
                if(check_sms_code($phone,$captcha)){
                    $res=Db::name('member')->where(['id'=>$mid])->update(['urgent_mobile' => $phone,'urgent_name'=>$name]);
                    if(!$res){
                        $this->error('修改失败');
                    }
                }else{
                    $this->error('修改失败');
                }
            }else{
                $this->error('参数错误');
            }
        }
        $data=member::getMemberInfoByID($mid);
        $mobile=$data['urgent_mobile'];
        $urgent_mobile=substr($mobile,0,3)."****".substr($mobile,-4,4);
        $this->assign('mobile',$urgent_mobile);
        $this->assign('name',$data['urgent_name']);
        return $this->fetch();
    }
    //获取短信验证码
    public function  getmobliecode(){
        $mid=MID;
        if(empty($mid)){
            $mid=$this->isLogin();
        }
        $post=$this->request->post();
        $phone=$post['phone'];
        if(!check_sms_code($phone)){return json(['status' => 0, 'message' => "请间隔60秒再获取验证码!"]);};
        $res=send_sms($phone,"sms_tp02");
        if($res){
            return json([['status' => 1, 'message' => "短信验证码已发送"]]);
        }else{
            return json([['status' => 0, 'message' => "短信验证码发送失败"]]);
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47

    /**
    * 修改手机号码
    * @return mixed
    * @captcha 验证码
    * @mobile 新手机号
    /
    /
    *
    * 修改手机号码
    * @return mixed
    * @captcha 验证码
    * @mobile 已注册手机号
    */

    public function telephone()
    {
        $mid=MID;//用户ID
        $data=member::getMemberInfoByID($mid);
        $old_mobile=$data['mobile'];//旧手机号
        if(empty($mid)){
            $mid=$this->isLogin(); //判断是否登录获取MID
        }
        $captcha1 = input('captcha'); //获取手机验证码
        $step = input('step'); //获取新手机号
        if(empty($step)){$step=1;}
        $new_mobile = input('new_mobile'); //获取新手机号
        if($captcha1 && $step==1){  //第一步
            session('step_key','lurenjiayi23101988');
            $result = $this->validate($captcha1, 'Member.captcha');//验证表单
            if($result){
                if(check_sms_code($old_mobile,$captcha1)){  //验证手机验证码
                    $this->redirect('profile/telephone', ['step' => 2]); //跳转第二步
                }else{
                    $this->error('验证码错误');
                }
            }else{
                $this->error('参数错误');
            }
        }elseif($step==2 && !empty($new_mobile)){ //第二步
            $yz = ['mobile'=>$new_mobile];
            // 验证码
            $result1 = $this->validate($yz, 'Member.editMoblie'); //验证表单
            if(!empty($result1) && $result1 != true){
    
                $this->error($result1);
            }else{
                $info=Db::name('member')->where(['mobile' => $new_mobile])->find();
                if(empty($info)){
                    $this->error("新手号已注册或和原手机号相同");
                }
                if (check_sms_code($new_mobile, $captcha1)) {
                    $res = Db::name('member')->where(['id' => $mid])->update(['mobile' => $new_mobile]);
                    if ($res) {
                        /*$auth = session('member_auth');
                        $auth['mobile'] = $new_mobile;
                        session('member_auth', $auth);
                        session('member_auth_sign', data_auth_sign($auth));*/
                        session(null);
                        $this->success('修改成功', 'profile/index');
                    } else {
                        $this->error('修改失败');
                    }
                }else{
                    $this->error('验证码错误');
                }
            }
        }else{
            if($step==2){
                if(empty($_SESSION['lmq_admin_']["step_key"])){
                    $this->error('原手机号码未通过验证');
                }
                unset($_SESSION['lmq_admin_']["step_key"]) ;
    
            }
        }
    
        $info=substr($old_mobile,0,3)."****".substr($old_mobile,-4,4);
        $this->assign('info',$info);
        $this->assign('old_mobile',$old_mobile);
        $this->assign('step',$step);
        return $this->fetch();
    }
    public function sendsms()
    {
        $mobile = input('mobile');
        $tp = 'code';
        if(input('captcha')){
            $captcha = ['captcha'=>input('captcha'), 'mobile'=>$mobile];
            // 验证码
            $result = $this->validate($captcha, 'Member.captcha');
            if(true !== $result){
                return ['status'=>0, 'message'=>$result];
            };
        }
        if(!check_sms_code($mobile)){return ['status' => 0, 'message' => "请间隔60秒再获取验证码!"];};
        //$res = send_sms($mobile, $template);
        $contentarr  = getconfigSms_status(['name'=>'register']);
        $content = str_replace(array("#var#"),array($mobile), $contentarr['value']);
        if($contentarr['status']==1){
            $res = sendsms_mandao($mobile,$content,$tp);
        }
        return ['status'=>$res, 'message'=>'发送失败'];
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55
    • 56
    • 57
    • 58
    • 59
    • 60
    • 61
    • 62
    • 63
    • 64
    • 65
    • 66
    • 67
    • 68
    • 69
    • 70
    • 71
    • 72
    • 73
    • 74
    • 75
    • 76
    • 77
    • 78
    • 79
    • 80
    • 81
    • 82
    • 83
    • 84
    • 85
    • 86
    • 87
    • 88
    • 89

    /**
    * 实名认证
    * @return mixed
    */

       public function realname()
        {
            $mid=MID;
            if(empty($mid)){
                $mid=$this->isLogin();
            }
            $datalist=member::getMemberInfoByID($mid);
            $post=$this->request->post();
            if(!empty($post)){
                if($datalist['id_auth']==1){
                    $this->error('您已经实名认证,不能更改');
                }
                if($datalist['name']!=null&&$datalist['id_card']!=null&&$datalist['id_auth']==0){
                    $this->assign("is_verified2", 1);
                    $this->error('您已经提交实名认证申请,请耐心等待。');
                }
                $result = $this->validate($post, 'Member.realname');
                if(true !== $result){
                    $this->error($result);
                }
                // if($post['logo1']==''or $post['logo2']==''or $post['logo3']==''){
             if($post['logo1']==''or $post['logo2']==''){
                    $this->error('请全部上传身份证照片');
                }
    
    
    
                $name=$post['name'];
                $id_card=$post['id_card'];
                $card_pic =$post['logo1'];
                $card_pic_back =$post['logo2'];
                $card_pic_hand =$post['logo3'];
    
                //调用阿里云接口
                $ava_img=http().$_SERVER["SERVER_NAME"] . '/' . 'uploads'. '/' .'images'.'/'.str_replace("\\","/",$card_pic);;
    
                $r = AliIdcardAuth($ava_img);//阿里接口
                $json = json_decode($r,true);//拼接成json数组
                if ($json['code']!==200){
                    $this->error($json['msg']);
                }
    
                if($json['data']['姓名']!==$name){
                    $this->error('真实姓名与身份证不匹配');
                }
                if($json['data']['公民身份号码']!==$id_card){
                    $this->error('身份证号与身份证不匹配');
                }
    
                //调用阿里云接口
                $res=Db::name('member')->where(['id'=>$mid])->update(['name' => $name,'id_card'=>$id_card,'card_pic'=>$card_pic,'card_pic_back'=>$card_pic_back,'card_pic_hand'=>$card_pic_hand,'id_auth'=>1,'auth_time'=>time()]);
                if($res){
    
                    $contentarr  = getconfigSms_status(['name'=>'stock_realname']);
                    $content = str_replace(array("#var#"),array($datalist['mobile']), $contentarr['value']);
                    if($contentarr['status']==1){
                        sendsms_mandao('',$content,'');
                    }
                    $this->success('实名认证成功!');
                }
            }
            if($datalist['name']!=null&&$datalist['id_card']!=null&&$datalist['id_auth']==0){
                $this->assign("is_verified2", 1);
            }else{
                $this->assign("is_verified2", '');
            }
            $url=http().$_SERVER["SERVER_NAME"];
            if(!empty($datalist['card_pic'])){
                $ava_img=$url . DS . 'uploads'. DS .'images'.DS.$datalist['card_pic'];
            }else{
                $ava_img = get_thumb($mid);
            }
            $datalist['avaImg'] = $ava_img;
            $telephone=config('web_site_telephone');
            $service_time=config('web_site_service_time');
            $this->assign('info',$datalist);
            $this->assign('url',$url);
            $this->assign("is_verified", $datalist['id_auth']);
            $this->assign('service_time',$service_time);
            $this->assign('telephone',$telephone);
            return $this->fetch();
        }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55
    • 56
    • 57
    • 58
    • 59
    • 60
    • 61
    • 62
    • 63
    • 64
    • 65
    • 66
    • 67
    • 68
    • 69
    • 70
    • 71
    • 72
    • 73
    • 74
    • 75
    • 76
    • 77
    • 78
    • 79
    • 80
    • 81
    • 82
       public function test(){
            $r = AliIdcardAuth($this->request->file('image'));//阿里接口
    
            $r2=getNeedBetween($r,'{','}');//返回的数据取出字符串
            $json = json_decode('{'.$r2.'}',true);//拼接成json数组
            if ($json['code']!==200){
                $this->error($json['msg']);
            }
        }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    //身份证图片上传
    
    • 1
    public function upload(){
    
        $mid=MID;
        if(empty($mid)){
            $mid=$this->isLogin();
        }
        $datalist=member::getMemberInfoByID($mid);
        if($datalist['id_auth']==1){
            $this->error('您已经实名认证,不能更改');
        }
        $type = request()->post("type", "");
        // return json_encode(['data' =>$type, 'code' => 1, 'message' => '图片上传成功']);
        if($type=='realnameimg1') {
            $typefield = 'card_pic';
            $file_uploads = 'file_upload';
        }elseif($type =='realnameimg2'){
            $typefield = 'card_pic_back';
            $file_uploads = 'file_upload1';
        }elseif($type=='realnameimg3'){
            $typefield = 'card_pic_hand';
            $file_uploads = 'file_upload2';
        }
        $file_path = request()->post("file_path", "");
        /*if ($file_path == "") {
            return json(['data' => '', 'code' => 0, 'message' => '文件路径不能为空']);
        }*/
    
        // 获取表单上传文件 例如上传了001.jpg
        $file = request()->file($file_uploads);
        // 移动到框架应用根目录/public/uploads/ images目录下
        $info = $file->validate(['size'=>2097152,'ext'=>'jpg,png,gif'])->move(ROOT_PATH . 'public' . DS . 'uploads'. DS .'images');
        if($info){
    
            // 成功上传后 获取上传信息
            $data[$typefield]=$info->getSaveName();
            /*$map['id']=$mid;
            $res=Db::name('member')->where($map)->update($data);*/
            //if($res){
            return json_encode(['data' => $info->getSaveName(), 'code' => 1, 'message' => '图片上传成功']);
            //echo $info->getSaveName();
            /*}else{
                $this->error('保存失败');
            }*/
            // 输出 42a79759f284b767dfcb2a0197904287.jpg
            //echo $info->getFilename();
        }else{
            // 上传失败获取错误信息
            echo $file->getError();
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50

    /**
    * 修改密码
    */

    public function password()
    {
        $mid=MID;
        if(empty($mid)){
            $mid=$this->isLogin();
        }
        $post=$this->request->post();
        if(!empty($post)){
            #服务端验证密码
            $result = $this->validate($post['newpwd'], 'Member.password');
            if($post['subpwd']!==$post['newpwd']){
                $this->error("新密码和确认密码不一致~");
            }
            $newpwd = Hash::make((string)$post['newpwd']);
            if(isset($post['oldpwd'])) {
                $c = Db::name('member')->where(["id"=>$mid])->find();
                $old = $post['oldpwd'];
                if($post['oldpwd']==$post['newpwd']){
                    $this->error("新密码与老密码不能一样~!");
                }
                if(empty($c['passwd'])){
                    $newid = Db::name('member')->where(["id"=>$mid])->update(['passwd'=>$newpwd]);
                    if($newid){
                        $this->success('设置成功');
                    }
                    else $this->error("设置失败,请重试~");
                }else{
                    if(Hash::check((string)$old, $c['passwd'])){
                        $newid = Db::name('member')->where(["id"=>$mid])->update(['passwd'=>$newpwd]);
                        if($newid){
    
                            $this->success('设置成功',url('/member/profile/'));
    
                        }
                        else $this->error("设置失败,请重试~");
                    }else{
                        $this->error("老密码错误,请重试~");
                    }
                }
            }else{
                $newid = Db::name('member')->where(["id"=>$mid])->update(['passwd'=>$newpwd]);
                if($newid) {
                    $this->success('设置成功',url('/member/profile/'));
                }
                else $this->error("设置失败,请重试~",0);
            }
        }
        return $this->fetch();
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49

    /**
    * 支付密码
    */

        public function paypass()
        {
            $mid=MID;
            if(empty($mid)){
                $mid=$this->isLogin();
            }
            $post=$this->request->post();
            if(!empty($post)){
                #服务端验证支付密码
                $result = $this->validate($post['newpwd'], 'Member.password');
                if($result !== true) return $this->error($result);
                if($post['subpwd']!==$post['newpwd']){
                    $this->error("新密码和确认密码不一致~");
                }
                $newpwd = Hash::make((string)$post['newpwd']);
                if(isset($post['oldpwd'])) {
                    $c = Db::name('member')->where(["id"=>$mid])->find();
                    $old = $post['oldpwd'];
                    if(Hash::check((string)$old, $newpwd)){
                        $this->error("新密码与老密码不能一样~");
                    }
                    if(empty($c['paywd'])){
                        $newid = Db::name('member')->where(["id"=>$mid])->update(['paywd'=>$newpwd]);
                        if($newid){
                            $this->success('设置成功',url('/member/profile/'));
                        }
                        else $this->error("设置失败,请重试~");
                    }else{
                        if(Hash::check((string)$old, $c['paywd'])){
                            $newid = Db::name('member')->where(["id"=>$mid])->update(['paywd'=>$newpwd]);
                            if($newid){
                                $this->success('设置成功',url('/member/profile/'));
                            }
                            else $this->error("设置失败,请重试~");
                        }else{
                            $this->error("原支付密码错误,请重试~");
                        }
                    }
                }else{
                    $newid = Db::name('member')->where(["id"=>$mid])->update(['paywd'=>$newpwd]);
                    if($newid) {
                        $this->success('设置成功',url('/member/profile/'));
                    }
                    else $this->error("设置失败,请重试~",0);
                }
            }
            return $this->fetch();
        }
    
        public function getpaypass()
        {
            $this->assign('member', Db::name('member')->find(MID));
            return $this->fetch();
        }
    
        public function resetPayPass(){
            $data = $this->request->post();
            $validate = $this->validate($data, 'Member.getpaypass');
            if($validate !== true) return $this->error($validate);
    
            $check_code = check_sms_code($data['mobile'], $data['sms_code']);
            if(!$check_code) return $this->error("短信验证码错误5");
    
            $newPayPassword = Hash::make((string)$data['paypass']);
            $update = Db::name("member")->where(['id' => MID])->update(['paywd' => $newPayPassword]);
            return $update !== null ? $this->success("修改成功") : $this->error('修改失败');
        }
    
        public function sendPayPassMsgCode()
        {
            if(session('resetPayPassCache') && time() - session('resetPayPassCache') < 60) return $this->error('请勿重复发送');
            $mobile = $this->request->param("mobile");
            $content = \think\Config::get('sms_template')['register'];
            $content = str_replace(array("#var#"),array($mobile), $content);
            $res = sendsms_mandao($mobile,$content,'code');
            session('resetPayPassCache', time());
            return $res ? $this->success('发送成功') : $this->error("发送失败");
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55
    • 56
    • 57
    • 58
    • 59
    • 60
    • 61
    • 62
    • 63
    • 64
    • 65
    • 66
    • 67
    • 68
    • 69
    • 70
    • 71
    • 72
    • 73
    • 74
    • 75
    • 76
    • 77
    • 78
    • 79
  • 相关阅读:
    【C语言】【结构体的位段】位段的内存分配及注意事项
    用java写一个HttpClients的连接池实例,用PoolingHttpClientConnectionManager
    zabbix 自动发现
    软件测试个人求职简历该怎么写,模板在这里
    使用IDEA创建一个SpringBoot项目
    4931: 二叉树遍历(先序中序还原树+后续遍历)
    configs
    刻字机尖角补偿
    C++多线程中互斥量的使用
    docker错误集-CentOS环境
  • 原文地址:https://blog.csdn.net/withkai44/article/details/134400820