本文實例講述了php版微信數據統計接口用法。分享給大家供大家參考,具體如下:
php版微信數據統計接口其實是非常的好用了在前版本還沒有此功能是後面的版本增加上去了,下面來看一個php版微信數據統計接口的例子:
微信在1月6日時放出了新的數據分析接口傳送門:
請注意:
1、接口側的公眾號數據的數據庫中僅存儲了2014年12月1日之後的數據,將查詢不到在此之前的日期,即使有查到,也是不可信的髒數據;
2、請開發者在調用接口獲取數據後,將數據保存在自身數據庫中,即加快下次用戶的訪問速度,也降低了微信側接口調用的不必要損耗。
用戶分析數據接口指的是用於獲得公眾平台官網數據統計模塊中用戶分析數據的接口,具體接口列表如下(暫無用戶屬性數據接口):
最大時間跨度是指一次接口調用時最大可獲取數據的時間范圍,如最大時間跨度為7是指最多一次性獲取7天的數據。access_token的實際值請通過“獲取access_token”來獲取。
接口調用請求說明
用戶分析數據接口(包括接口列表中的所有接口)需要向相應接口調用地址POST以下示例數據包:
{ "begin_date": "2014-12-02", "end_date": "2014-12-07" }
調用參數說明:
粗略看了下,暫時還是內測階段,不過因為是新接口,所以要改進下本站所用的微信高級接口的類。修改如下:
在類裡加上新接口常量:
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微信開發技巧匯總》、《PHP編碼與轉碼操作技巧匯總》、《PHP網絡編程技巧總結》、《PHP基本語法入門教程》、《php字符串(string)用法總結》、《php+mysql數據庫操作入門教程》及《php常見數據庫操作技巧匯總》
希望本文所述對大家PHP程序設計有所幫助。