php版微信数据统计接口用法示例


Posted in PHP onOctober 12, 2016

本文实例讲述了php版微信数据统计接口用法。分享给大家供大家参考,具体如下:

php版微信数据统计接口其实是非常的好用了在前版本还没有此功能是后面的版本增加上去了,下面来看一个php版微信数据统计接口的例子:

微信在1月6日时放出了新的数据分析接口传送门:

php版微信数据统计接口用法示例

请注意:

1、接口侧的公众号数据的数据库中仅存储了2014年12月1日之后的数据,将查询不到在此之前的日期,即使有查到,也是不可信的脏数据;

2、请开发者在调用接口获取数据后,将数据保存在自身数据库中,即加快下次用户的访问速度,也降低了微信侧接口调用的不必要损耗。

用户分析数据接口指的是用于获得公众平台官网数据统计模块中用户分析数据的接口,具体接口列表如下(暂无用户属性数据接口):

最大时间跨度是指一次接口调用时最大可获取数据的时间范围,如最大时间跨度为7是指最多一次性获取7天的数据。access_token的实际值请通过“获取access_token”来获取。

接口调用请求说明

用户分析数据接口(包括接口列表中的所有接口)需要向相应接口调用地址POST以下示例数据包:

{
  "begin_date": "2014-12-02",
  "end_date": "2014-12-07"
}

调用参数说明:

php版微信数据统计接口用法示例

粗略看了下,暂时还是内测阶段,不过因为是新接口,所以要改进下本站所用的微信高级接口的类。修改如下:

在类里加上新接口常量:

API_DATA_CUBE_URL = 'https://api.weixin.qq.com/datacube',
API_TYPE_DATA = 'datacube'

修改call方法:因为它要求URL参数只是access token所以跟以前JSON时一样,不过要在判断里加入datacube的判断(注:注释已经说明):

public function call($api_name, $params = array(), $type = self::GET, $api_type = self::API_TYPE_CGI) {
    //加入datacube后,用switch来组接口URL
    switch(true) {
      case $api_type == self::API_TYPE_PAY :
        $url = self::PAY_URL.$api_name;
        break;
      case $api_type == self::API_TYPE_DATA:
        $url = self::API_DATA_CUBE_URL.$api_name;
        break;
      default :
        $url = self::API_URL_PREFIX.$api_name;
    }
    if (in_array($api_name, self::$_no_need_token_apis)) {
      $res = $this->request($url, $params, $type);
      if ($res) {
        return $res;
      }
    }
    $this->_access_token = $this->getAccessToken();
    if ($this->_access_token) {
      //加多个or判断带上access_token
      if ($type == self::JSON || $api_type == self::API_TYPE_DATA) {
        $url = $url.'?access_token='.$this->_access_token;
      } else {
        $params['access_token'] = $this->_access_token;
      }
      $res = $this->request($url, $params, $type);
      if ($res) {
        return $res;
      }
    }
    return false;
}

最后CLI方式call文档中一个getinterfacesummary接口调试(注意:是POST方式给接口):

if (isset($argc) && $argc >= 1 && $argv[0] == __FILE__) {
  $client = new WechatJSON(array(
    WechatJSON::APP_ID => 'wx78sfsd023744d51',
    WechatJSON::APP_SECRET => '9ba3476db1fsfsff512esf2f630fb9',
  ));
  $res = $client->call('/getinterfacesummary', array(
    'begin_date' => '2014-12-01',
    'end_date' => '2014-12-31'
  ), WechatJSON::POST, WechatJSON::API_TYPE_DATA);
  if (!$res) {
    var_dump($client->_error);
  }
  var_dump($res);
}

运行结果,虽然是API 未授权(毕竟还是内测有条件的合作伙伴有资料,公众号的就等吧):

后记,以后再做个linux任务让后台自己每隔一段时间(一周或30天)因为数据统计接口有的是7天,有的是30天。这样执行取到数据再写进库表,生成图报表,省下自己log一些官方已经给你log的统计!

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
smarty+adodb+部分自定义类的php开发模式
Dec 31 PHP
php在线生成ico文件的代码
Oct 09 PHP
用PHP写的基于Memcache的Queue实现代码
Nov 27 PHP
php生成扇形比例图实例
Nov 06 PHP
php将文本文件转换csv输出的方法
Dec 31 PHP
php实现递归抓取网页类实例
Apr 03 PHP
从wamp到xampp的升级之路
Apr 08 PHP
php使用MySQL保存session会话的方法
Jun 26 PHP
ajax+php控制所有后台函数调用
Jul 15 PHP
yii添删改查实例
Nov 16 PHP
制作个性化的WordPress登陆界面的实例教程
May 21 PHP
Zend Framework入门教程之Zend_Mail用法示例
Dec 08 PHP
php版微信js-sdk支付接口类用法示例
Oct 12 #PHP
php版微信支付api.mch.weixin.qq.com域名解析慢原因与解决方法
Oct 12 #PHP
如何使用php等比例缩放图片
Oct 12 #PHP
php与python实现的线程池多线程爬虫功能示例
Oct 12 #PHP
php实现的SSO单点登录系统接入功能示例分析
Oct 12 #PHP
php用户密码加密算法分析【Discuz加密算法】
Oct 12 #PHP
基于php实现的php代码加密解密类完整实例
Oct 12 #PHP
You might like
PHP中文分词的简单实现代码分享
2011/07/17 PHP
PHP简洁函数(PHP简单明了函数语法)
2012/06/10 PHP
PHP判断文件是否存在、是否可读、目录是否存在的代码
2012/10/03 PHP
thinkphp实现图片上传功能分享
2014/03/04 PHP
phpmailer发送邮件之后,返回收件人是否阅读了邮件的方法
2014/07/19 PHP
jquery ajax 同步异步的执行示例代码
2010/06/23 Javascript
asp.net网站开发中用jquery实现滚动浏览器滚动条加载数据(类似于腾讯微博)
2012/03/14 Javascript
jquery做的一个简单的屏幕锁定提示框
2014/03/26 Javascript
JS实现随页面滚动显示/隐藏窗口固定位置元素
2016/02/26 Javascript
javascript中call apply 与 bind方法详解
2016/03/10 Javascript
jQuery ajax应用总结
2016/06/02 Javascript
Javascript打印局部页面实例
2016/06/21 Javascript
详解nodejs 文本操作模块-fs模块(二)
2016/12/22 NodeJs
js实现文本上下来回滚动
2017/02/03 Javascript
JS中的多态实例详解
2017/10/15 Javascript
JS求Number类型数组中最大元素方法
2018/04/08 Javascript
vue项目中公用footer组件底部位置的适配问题
2018/05/10 Javascript
JavaScript根据json生成html表格的示例代码
2018/10/24 Javascript
js+html5 canvas实现ps钢笔抠图
2019/04/28 Javascript
vant-ui框架的一个bug(解决切换后onload不触发)
2020/11/11 Javascript
[02:01]BBC DOTA2国际邀请赛每日综述:八强胜者组鏖战,中国队喜忧参半
2014/07/19 DOTA
PyQt5每天必学之QSplitter实现窗口分隔
2018/04/19 Python
python生成n个元素的全组合方法
2018/11/13 Python
Python异步编程之协程任务的调度操作实例分析
2020/02/01 Python
CSS3模块的目前的状况分析
2010/02/24 HTML / CSS
Waterford加拿大官方网站:世界著名的水晶杯品牌
2016/11/01 全球购物
美国马匹用品和马钉购物网站:State Line Tack
2018/08/05 全球购物
香港零食网购:上仓胃子
2020/06/08 全球购物
Oracle中delete,truncate和drop的区别
2016/05/05 面试题
计算机应用专业毕业生求职信
2013/10/24 职场文书
影视动画专业个人的自我评价
2013/12/31 职场文书
建筑工程技术专业求职信
2014/07/16 职场文书
2014年仓库保管员工作总结
2014/12/03 职场文书
接待员岗位职责范本
2015/04/15 职场文书
Spring 使用注解开发
2022/05/20 Java/Android
设置IIS Express并发数
2022/07/07 Servers