zs1376065725
<?php
/**
 * Created by PhpStorm.
 * User: admin
 * Date: 2021/7/15
 * Time: 9:55
 */

namespace app\api\controller;
use think\cache\driver\Redis;

class Sendmsg
{
    /*获取全局的token*/
    public function ccs(){
        $dd=$this->getAccessToken();
        echo $dd;
    }
    /*存accesstoken*/
    public function getAccessToken()
    {
        $isExpires = $this->isExpires();
        if($isExpires === false){
            //到期,获取新的
            $url = \'https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=\' .config(\'appid\') . \'&secret=\' . config(\'secret\');

            $res = $this->curl($url);
            // dump($res);
            $arr = json_decode($res,true);
//            return json($arr);

            if($arr && !isset($arr[\'errcode\'])){
                $arr[\'time\'] = time();
                file_put_contents(APP_PATH . \'../access_token.json\', json_encode($arr));
//                var_dump($arr);
                return $arr[\'access_token\'];
            }else{
                echo \'error on get access_token\';die;
            }
        }else{
            return $isExpires;
        }

    }
    /*检测是否过期*/
    public function isExpires(){
        if(!file_exists(APP_PATH . \'../access_token.json\')){
            return false;
        }
        $res = file_get_contents(APP_PATH . \'../access_token.json\');
        $arr = json_decode($res,true);
        if($arr && time()<(intval($arr[\'time\'])+intval($arr[\'expires_in\']))){
            //未过期
            return $arr[\'access_token\'];
        }else{
            return false;
        }
    }

    /*curl请求*/
    public function curl($url)
    {
        //初始化
        

分类:

技术点:

相关文章: