ホームページ  >  記事  >  バックエンド開発  >  PHP版WeChatデータ統計インターフェースの使用例

PHP版WeChatデータ統計インターフェースの使用例

墨辰丷
墨辰丷オリジナル
2018-06-01 09:52:561275ブラウズ

この記事では、主に PHP バージョンの WeChat データ統計インターフェースの使用法を紹介し、PHP WeChat データ統計インターフェースの機能と関連する使用スキルを例の形式で分析します。 WeChat データ統計インターフェイスのバージョンは実際に非常に便利です。この機能は以前のバージョンでは利用できませんでしたが、後のバージョンで追加されました。WeChat データ統計インターフェイスの PHP バージョンの例を見てみましょう。

WeChat は 1 月 6 日に新しいデータ分析インターフェイス ポータルをリリースしました:

ご注意ください:

1. インターフェイス側の公開アカウント データ データベースには、2014 年 12 月 1 日以降のデータのみが保存されます。たとえクエリがあってもクエリされません。これは信頼できないダーティ データでもあります。

2. 開発者は、インターフェイスを呼び出してデータを取得した後、そのデータを独自のデータベースに保存するように求められます。これにより、次のユーザーのアクセスが高速化されます。 WeChat 側インターフェイスへの不要な呼び出しの損失を減らします。

ユーザー分析データインターフェースとは、パブリックプラットフォームの公式ウェブサイトのデータ統計モジュールでユーザー分析データを取得するために使用されるインターフェースを指します。具体的なインターフェースのリストは次のとおりです(ユーザー属性データインターフェースはまだありません)。最大時間幅とは、1 回のインターフェース呼び出しで取得できる最大時間幅を指します。たとえば、最大時間幅は 7 であり、一度に最大 7 日分のデータを取得できることを意味します。 access_tokenの実際の値は「access_tokenの取得」で取得してください。

インターフェイス呼び出しリクエストの説明

ユーザー分析データ インターフェイス (インターフェイス リスト内のすべてのインターフェイスを含む) は、次のサンプル データ パケットを対応するインターフェイス呼び出しアドレスに POST する必要があります:

{
  "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と同じですが、判定は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 は認可されていませんが、実行結果 (結局のところ、内部テストの条件を備えたパートナーは情報を持っており、公開アカウントを持つパートナーは待つ必要があります):

追記、将来的には、Linux タスクを作成し、バックグラウンドで時々 (1 週間または 30 日) 実行するように依頼する予定です。一部のデータ統計インターフェイスは 7 日経過したものと、30 日経過したものがあるためです。このようにして、データが取得され、データベース テーブルに書き込まれてグラフィック レポートが生成されるため、公式がすでに記録している統計情報を記録する手間が省けます。

要約: 上記がこの記事の全内容です。皆様の学習に役立つことを願っています。

関連する推奨事項:

php

シングルトンモードに基づいてmysqlクラスをカプセル化する方法

thinkPHPフレームワークでトランザクションを実行する方法

PHP+MySQLはmysql_num_rowsを使用して実装しますのファジークエリ書籍情報機能


以上がPHP版WeChatデータ統計インターフェースの使用例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。