微信 getAccessToken方法详解及实例

作者:无名 - PHP编程 -

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;
 }


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

该篇内容就是由IT人知识库(原文链接:http://www.itpeo.net/12740/476751.html)小编为各位整理





PHP 闭包详解及实例代码

闭包和匿名函数在PHP5.3.0中引入的。 闭包是指:创建时封装周围状态的函数。即使闭包所处的环境不存在了,闭包中封装... ...

JavaScript与HTML结合的基本使用方法整理

JavaScript:写入 HTML 输出 实例 document.write("<h1>This i... ...

mac下安装nginx和php

一、前话:1.1、环境选择:重新在mac上配置php,原本mac上就自带有apach、php以及pgsql,如果图简单的... ...

rfedfre

jQuery EasyUI API 中文文档 - DateBox日期框

扩展自 $.fn.combo.defaults。用 $.fn.datebox.defaults 重写了 defaults... ...

js下函数般调用正则的方法附代码

曾经 ECMAScript 4 建议指出这个功能将会增加到 ES4 规... ...

解决控件遮挡问题:关于有窗口元素和无窗口元素

不知道朋友们有没有碰到过控件的遮挡问题,最典型的就是DropdownList和ActiveX的遮挡,HTML的z-ind... ...

常用表单验证类,有了这个,一般的验证就都齐了。

代码如下:<php   /**    * 页面作用:... ...

玩转图像函数库—常见图形操作

我尽量不说大理论,诸如什么是png,自己查解决. PHP自4.3版本开始,捆绑了自己的GD2库,用户可以自己下载并设置.... ...

转换中文为unicode 转换unicode到正常文本

代码如下:'//转换中文为unicode function URLEncoding(vstrIn) &nbs... ...

生成静态页面的PHP类

代码如下:<php  class html  {   &nbs... ...

微信开发之php表单微信中自动提交两次问题解决办法

前言: 最近做微信开发,在微信中访问PHP页面,页面中有个表单。测试发现偶尔会出现表单被自动提交两次的情况,导致流程出错... ...

php pdo操作数据库示例

POD扩展是在PHP5中加入,该扩展提供PHP内置类 PDO来对数据库进行访问,不同数据库使用相同的方法名,解决数据库连... ...

PHP 无限级分类

有一段时间没用过无限极分类,不巧今天又用到,所以特地去翻箱回顾以前。为了避免以后找起来麻烦,特地贴在这里。 <... ...

详解PHP中的 input属性(隐藏 只读 限制)

隐藏 <input type="hidden"> 只读 <input type="text" r... ...

rfedfre

php连接MSsql server的五种方法总结

参考php手册,对php连接sql server系列做出个小结。主要有五种方式: 一、通过mssql_系列函数 mssq... ...

rfedfre

php生成复杂验证码(倾斜,正弦干扰线,黏贴,旋转)

现在好多网站使用的验证码非常容易被软件自动识别到,本文介绍了一种PHP生成复杂验证码加入倾斜,弦干扰线,黏贴,旋转等效果... ...

rfedfre

php array_map()数组函数使用说明

/*函数array_map()函数:多数组回调函数---将回调函数作用到给定数组的单元上 * 1、语法:array a... ...

php 利用array_slice函数获取随机数组或前几条数据

先给大家说下基本语法:array_slice ( array $array , int $offset [, int $... ...

PHP中strlen()和mb_strlen()的区别浅析

在php中常见的计算字符串长度的函数有:strlen和mb_strlen.当字符全是英文字符的时候,两者是一样。这里主要... ...

rfedfre

php中preg_replace正则替换用法分析

本文实例讲述了php中preg_replace正则替换用法。分享给大家供大家参考,具体如下:1.php 的 preg_r... ...