微信 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 相关文章推荐
php设计模式 Factory(工厂模式)
Jun 26 PHP
提高php运行速度的一些小技巧分享
Jul 03 PHP
PHP大转盘中奖概率算法实例
Oct 21 PHP
thinkphp3.2.2前后台公用类架构问题分析
Nov 25 PHP
PHP缓存集成库phpFastCache用法
Dec 15 PHP
PHP-FPM实现性能优化
Mar 31 PHP
PHP实现表单提交时去除斜杠的方法
Dec 26 PHP
php数组实现根据某个键值将相同键值合并生成新二维数组的方法
Apr 26 PHP
thinkPHP5 ACL用户权限模块用法详解
May 10 PHP
PHP利用Socket获取网站的SSL证书与公钥
Jun 18 PHP
PHP微信网页授权的配置文件操作分析
May 29 PHP
在 PHP 和 Laravel 中使用 Traits的方法
Nov 13 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
php获取指定(访客)IP所有信息(地址、邮政编码、国家、经纬度等)的方法
2015/07/06 PHP
Jquery判断IE6等浏览器的代码
2011/04/05 Javascript
jquery异步跨域访问代码
2013/06/28 Javascript
javascript使用shift+click实现选择和反选checkbox的方法
2015/05/04 Javascript
javascript实现网页端解压并查看zip文件
2015/12/15 Javascript
javascript类型系统——日期Date对象全面了解
2016/07/13 Javascript
Backbone中View之间传值的学习心得
2016/08/09 Javascript
Vue.js第四天学习笔记(组件)
2016/12/02 Javascript
Radio 单选JS动态添加的选项onchange事件无效的解决方法
2016/12/12 Javascript
jQuery获取table下某一行某一列的值实现代码
2017/04/07 jQuery
jQuery实现可拖动进度条实例代码
2017/06/21 jQuery
AngularJS+Bootstrap3多级导航菜单的实现代码
2017/08/16 Javascript
angular4自定义表单控件[(ngModel)]的实现
2018/11/23 Javascript
JavaScript学习笔记之DOM基础操作实例小结
2019/01/09 Javascript
jquery实现点击弹出对话框
2020/02/08 jQuery
Vue中实现回车键切换焦点的方法
2020/02/19 Javascript
[43:41]VP vs RNG 2019国际邀请赛淘汰赛 败者组 BO3 第二场 8.21.mp4
2020/07/19 DOTA
Python实现的爬虫功能代码
2017/06/24 Python
python3调用R的示例代码
2018/02/23 Python
Python Numpy计算各类距离的方法
2019/07/05 Python
Python变量、数据类型、数据类型转换相关函数用法实例详解
2020/01/09 Python
TensorFlow实现checkpoint文件转换为pb文件
2020/02/10 Python
css3 中实现炫酷的loading效果
2019/04/26 HTML / CSS
Myprotein葡萄牙官方网站:英国优质运动营养品牌
2016/09/12 全球购物
Senreve官网:美国旧金山的奢侈手袋品牌
2019/03/21 全球购物
运动会稿件200字
2014/02/07 职场文书
项目合作协议书
2014/04/16 职场文书
城市轨道交通工程职业生涯规划书范文
2014/09/16 职场文书
住宿生擅自离校检讨书
2014/09/22 职场文书
临时租车协议范本
2014/09/23 职场文书
开展批评与自我批评发言稿
2014/10/16 职场文书
2014普法依法治理工作总结
2014/12/18 职场文书
给老婆的检讨书
2015/01/27 职场文书
手术室护士个人总结
2015/02/13 职场文书
辞职信标准格式
2015/02/27 职场文书
大学团日活动总结书
2015/05/11 职场文书