微信 getAccessToken方法详解及实例


Posted in PHP onNovember 23, 2016

memcache缓存存储用户信息7000秒

<?php
function getAccessToken($appid,$appsecret) 
{
  $mem = new CacheMemcache();
  $acc = $mem->get('access_token_'.$appid);
  if (!$acc) 
  {
    $url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=$appid&secret=$appsecret";
    $result = https_request($url);
    $jsoninfo = json_decode($result, true);
    $access_token = $jsoninfo['access_token'];
    if ($access_token) 
    {
      $expire = time() + 7000;
      $mem = new CacheMemcache();
      $mem->set('access_token_'.$appid,$access_token,$expire);
    }
  }
  else 
  {
    $access_token = $acc;
  }
  return $access_token;
}
?>

文件存储access_token

function getAccessToken() {
  // access_token 应该全局存储与更新,以下代码以写入到文件中做示例
  $data = json_decode(file_get_contents("access_token.json"));
  if ($data->expire_time < time()) {
   $url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=$this->appId&secret=$this->appSecret";
   $res = json_decode($this->httpGet($url));
   $access_token = $res->access_token;
   if ($access_token) {
    $data->expire_time = time() + 7000;
    $data->access_token = $access_token;
    $fp = fopen("access_token.json", "w");
    fwrite($fp, json_encode($data));
    fclose($fp);
   }
  } else {
   $access_token = $data->access_token;
  }
  return $access_token;
 }

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

PHP 相关文章推荐
一个可以找出源代码中所有中文的工具
Oct 25 PHP
frename PHP 灵活文件命名函数 frename
Sep 09 PHP
mayfish 数据入库验证代码
Apr 30 PHP
PHP运行SVN命令显示某用户的文件更新记录的代码
Jan 03 PHP
thinkphp3.0输出重复两次的解决方法
Dec 19 PHP
PHP中的一些常用函数收集
May 26 PHP
php计算整个目录大小的方法
Jun 19 PHP
PHP二维数组去重实例分析
Nov 18 PHP
yii2-GridView在开发中常用的功能及技巧总结
Jan 07 PHP
php注册系统和使用Xajax即时验证用户名是否被占用
Aug 31 PHP
thinkphp5框架实现数据库读取的数据转换成json格式示例
Oct 10 PHP
PHP 实现 WebSocket 协议原理与应用详解
Apr 22 PHP
Yii核心验证器api详解
Nov 23 #PHP
[原创]php集成安装包wampserver修改密码后phpmyadmin无法登陆的解决方法
Nov 23 #PHP
php in_array() 检查数组中是否存在某个值详解
Nov 23 #PHP
php 数组处理函数extract详解及实例代码
Nov 23 #PHP
CI框架封装的常用图像处理方法(缩略图,水印,旋转,上传等)
Nov 22 #PHP
php each 返回数组中当前的键值对并将数组指针向前移动一步实例
Nov 22 #PHP
CI框架中类的自动加载问题分析
Nov 21 #PHP
You might like
thinkphp3查询mssql数据库乱码解决方法分享
2014/02/11 PHP
ThinkPHP有变量的where条件分页实例
2014/11/03 PHP
PHP使用array_fill定义多维数组的方法
2015/03/18 PHP
PHP中实现Bloom Filter算法
2015/03/30 PHP
Zend Framework教程之Loader以及PluginLoader用法详解
2016/03/09 PHP
不错的JS中变量相关的细节分析
2007/08/13 Javascript
一些常用的JS功能函数代码
2009/06/23 Javascript
Iframe自适应高度绝对好使的代码 兼容IE,遨游,火狐
2011/01/27 Javascript
js中opener与parent的区别详细解析
2014/01/14 Javascript
滚动条响应鼠标滑轮事件实现上下滚动的js代码
2014/06/30 Javascript
浅谈Javascript 数组与字典
2015/01/29 Javascript
基于jQuery实现最基本的淡入淡出效果实例
2015/02/02 Javascript
JavaScript将字符串转换成字符编码列表的方法
2015/03/19 Javascript
JavaScript和JQuery的鼠标mouse事件冒泡处理
2015/06/19 Javascript
使用JS代码实现点击按钮下载文件
2016/11/12 Javascript
vue双向绑定及观察者模式详解
2019/03/19 Javascript
JavaScript实现手风琴效果
2021/02/18 Javascript
Python中字典和JSON互转操作实例
2015/01/19 Python
Python闭包实现计数器的方法
2015/05/05 Python
python实现求最长回文子串长度
2018/01/22 Python
对python中两种列表元素去重函数性能的比较方法
2018/06/29 Python
零基础使用Python读写处理Excel表格的方法
2019/05/02 Python
python实现批量修改服务器密码的方法
2019/08/13 Python
Python编写带选项的命令行程序方法
2019/08/13 Python
在OpenCV里使用Camshift算法的实现
2019/11/22 Python
python实现ip地址的包含关系判断
2020/02/07 Python
三步解决python PermissionError: [WinError 5]拒绝访问的情况
2020/04/22 Python
python 解决mysql where in 对列表(list,,array)问题
2020/06/06 Python
毕业实习个人鉴定范文
2013/12/10 职场文书
邮政员工辞职信
2014/01/16 职场文书
毕业生大学生活自我总结
2014/01/31 职场文书
2014年母亲节演讲稿范文
2014/05/07 职场文书
低碳环保演讲稿
2014/08/28 职场文书
解除劳动关系协议书2篇
2014/11/28 职场文书
怒海潜将观后感
2015/06/11 职场文书
关于考试抄袭的检讨书
2019/11/02 职场文书