获取微信accesstoken并文件缓存方式

function getAccessToken()
	{
		$appid = 'wx53cxxxxxx';
		$secret = 'f46xxxxxxxxxxxddda2';
		
		$accessTokenFile = './accessToken.txt';
		if (file_exists($accessTokenFile)) {//文件存在
			$time = time();
			$tokenFileJson = file_get_contents($accessTokenFile);
			$fileArrData = json_decode($tokenFileJson,true);
			$fileExpireTime = isset($fileArrData['expireTime'])?$fileArrData['expireTime']:0;
			if ($fileExpireTime > $time) {//请求token未过期
				$accessToken = isset($fileArrData['accessToken'])?$fileArrData['accessToken']:'';
				return $accessToken;
			}else{
				$url = 'https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid='.$appid.'&secret='.$secret;
				$jsonData = file_get_contents($url);
				$arrData = json_decode($jsonData,true);
				file_put_contents('./getToken.txt','【'.date("Y-m-d H:i:s").'】'.$jsonData.PHP_EOL,FILE_APPEND);
				if (isset($arrData['errcode'])) {
					exit($arrData['errmsg']);
				}else{
					$expireTime = time() + 5000;//过期时间
					$accessToken = isset($arrData['access_token'])?$arrData['access_token']:'';
					file_put_contents($accessTokenFile,json_encode(array('accessToken'=>$accessToken,'expireTime'=>$expireTime)));
					return $accessToken;
				}
			}
		}else{//文件不存在
			$url = 'https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid='.$appid.'&secret='.$secret;
			$jsonData = file_get_contents($url);
			$arrData = json_decode($jsonData,true);
			file_put_contents('./getToken.txt','['.date("Y-m-d H:i:s").']'.$jsonData.PHP_EOL,FILE_APPEND);
			if (isset($arrData['errcode'])) {
				exit($arrData['errmsg']);
			}else{
				$expireTime = time() + 5000;//过期时间
				$accessToken = isset($arrData['access_token'])?$arrData['access_token']:'';
				file_put_contents($accessTokenFile,json_encode(array('accessToken'=>$accessToken,'expireTime'=>$expireTime)));
				return $accessToken;
			}
		}
		

		
	}

  

原文地址:https://www.cnblogs.com/dreamboycx/p/13576264.html