>  기사  >  백엔드 개발  >  PHP 버전의 WeChat 데이터 통계 인터페이스 사용 예

PHP 버전의 WeChat 데이터 통계 인터페이스 사용 예

墨辰丷
墨辰丷원래의
2018-06-01 09:52:561290검색

이 글은 주로 PHP 버전의 WeChat 데이터 통계 인터페이스의 사용법을 소개하고, PHP WeChat 데이터 통계 인터페이스의 기능과 관련 사용 기술을 예제 형식으로 분석합니다. 도움이 필요한 친구들은 참고할 수 있습니다

PHP WeChat 데이터 통계 인터페이스 버전은 실제로 매우 유용합니다. 이 기능은 이전 버전에서는 사용할 수 없었지만 이후 버전에서는 추가되었습니다. WeChat 데이터 통계 인터페이스의 예를 살펴보겠습니다.

WeChat은 1월 6일에 새로운 데이터 분석 인터페이스 포털을 출시했습니다.

참고:

1 인터페이스 측의 공개 계정 데이터 데이터베이스는 2014년 12월 1일 이후의 데이터만 저장합니다. 쿼리가 있어도 쿼리되지 않습니다.

2. 개발자는 데이터를 얻기 위해 인터페이스를 호출한 후 데이터를 자체 데이터베이스에 저장해야 합니다. 이렇게 하면 다음 사용자의 액세스 속도가 빨라집니다. WeChat 측 인터페이스에 대한 불필요한 호출 손실을 줄입니다.

사용자 분석 데이터 인터페이스는 공개 플랫폼 공식 웹사이트의 데이터 통계 모듈에서 사용자 분석 데이터를 얻는 데 사용되는 인터페이스를 의미합니다. 구체적인 인터페이스 목록은 다음과 같습니다(아직 사용자 속성 데이터 인터페이스가 없습니다).

최대 시간 범위는 한 번의 인터페이스 호출에서 최대 시간 범위를 나타냅니다. 데이터를 얻을 수 있는 시간 범위는 예를 들어 최대 시간 범위는 7일로, 한 번에 최대 7일 동안의 데이터를 얻을 수 있다는 의미입니다. . "Get access_token"을 통해 access_token의 실제 값을 획득하시기 바랍니다.

인터페이스 호출 요청 설명

사용자 분석 데이터 인터페이스(인터페이스 목록의 모든 인터페이스 포함)는 다음 샘플 데이터 패킷을 해당 인터페이스 호출 주소에 게시해야 합니다.

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

호출 매개변수 설명:

대략 살펴보면 아직 내부 테스트 단계이지만 새로운 인터페이스이기 때문에 이 사이트에서 사용하는 WeChat 고급 인터페이스 클래스를 개선해야 합니다. 다음과 같이 수정합니다.

클래스에 새 인터페이스 상수 추가:

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

호출 방법 수정: URL 매개변수가 액세스 토큰만 필요하므로 이전 JSON과 동일하지만 판단은 of 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 메소드는 문서에서 디버깅하는 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가 인증되지 않았음에도 실행 결과(결국 내부 테스트 조건을 갖춘 파트너는 정보를 얻을 수 있고, 공개 계정을 가진 파트너는 기다려야 함):

Postscript, in 앞으로는 Linux 작업을 만들고 백그라운드에서 가끔씩(1주 또는 30일) 수행하도록 요청할 것입니다. 일부 데이터 통계 인터페이스는 7일이 지났기 때문입니다. 이러한 방식으로 데이터를 가져온 다음 데이터베이스 테이블에 기록하여 그래픽 보고서를 생성하므로 공식 담당자가 이미 기록한 일부 통계를 기록하는 수고를 덜 수 있습니다!

요약: 위 내용은 이 글의 전체 내용입니다. 모든 분들의 공부에 도움이 되었으면 좋겠습니다.

관련 권장사항:

php싱글톤 모드를 기반으로 mysql 클래스를 캡슐화하는 방법

thinkPHP 프레임워크에서 트랜잭션을 실행하는 방법

PHP+MySQL은 mysql_num_rows를 사용하여 구현 퍼지 질의서 정보 기능

위 내용은 PHP 버전의 WeChat 데이터 통계 인터페이스 사용 예의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.