码迷,mamicode.com
首页 > 数据库 > 详细

PHP获取access_token

时间:2020-06-02 09:36:23      阅读:165      评论:0      收藏:0      [点我收藏+]

标签:get   res   amp   app   grant   vat   write   pen   code   

    /**
     * 获取accesstoken
     *
     * @param  int  $id
     * @return \think\Response
     */
    public function AccessToken($appid)
    {
        //获取url
        $file = $this->accesstoken_url;

        if(!file_exists($file)){
            $token = $this->get_accesstoken($appid);
        }else{

            $fileInfo = explode(",",file_get_contents($file));

            if(!empty(trim($fileInfo[0])) && $fileInfo[1] >= time()){
                $token = $fileInfo[0];
            }else{
                $token = $this->get_accesstoken($appid);
            }

        }


        return $token;
    }

    /**
     * 获取token
     */
    private function get_accesstoken($appid)
    {
        $data = [
            "grant_type"=>"client_credential",
            "appid"=>$appid,
            "secret"=>$this->AppSecret
        ];

        $url = $this->url_token;

        $tokeninfo = $this->jsonDecode(https_request($url,$data),"access_token");

        if($tokeninfo){
            $text = $tokeninfo.",".(time()+7000);

            //写入文件中
            $file = $this->accesstoken_url;
    
            if(!file_exists($file)){
                fopen($file,"wb");
            }
            //把值存入文件中
            $myfile = fopen($file,"w");

            fwrite($myfile, $text);//写入文件

            fclose($myfile);//关闭文件
        }

        return  $tokeninfo;
    }

    /**
     * json数据处理
     */
    private function jsonDecode($data,$key)
    {
        $new_data = json_decode($data,true);

        if(array_key_exists($key,$new_data)){
            return $new_data[$key];
        }
        return $data;
    }

 

PHP获取access_token

标签:get   res   amp   app   grant   vat   write   pen   code   

原文地址:https://www.cnblogs.com/corvus/p/13029155.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!