Google AnalyticsAPI - 访问者总数[PHP]

时间:2018-02-15 09:07:50

标签: php google-analytics google-api google-analytics-api google-api-php-client

所以我的任务是在PHP中创建一个Web应用程序,它将执行此操作:

  • 输出网站上的访问者总数
  • 输出访客最多的国家/地区的名称

到目前为止,我已经这样做了:

  • 在API控制台中创建项目
  • 启用API
  • 创建凭据
  • 成功设置示例

当我运行示例时,它会输出授权用户的第一个Google Analytics视图的名称以及过去七天的会话数。我按照这些说明操作:https://developers.google.com/analytics/devguides/config/mgmt/v3/quickstart/web-php

我分析了代码,并发现为了调用Core Reporting API,需要获取用户的Profile ID。

function getResults($analytics, $profileId) {
   return $analytics->data_ga->get(
      'ga:' . $profileId,
      '7daysAgo',
      'today',
      'ga:sessions');
}

要获取配置文件ID,使用函数getFirstProfileId(您可以在我提供的链接上看到它。)

所以我的问题是 - 如何让它工作,以便输出我页面上的访客总数。我是否必须跳过我获得profileID的部分,如果这是真的,我该如何调用Core Reporting API?

2 个答案:

答案 0 :(得分:1)

我认为你误解了个人资料ID是什么。当您向Google进行身份验证时,您可以访问当前经过身份验证的用户Google分析帐户。

为了从Google Analytics API请求数据,它需要知道您希望请求的数据视图与配置文件相同。

  

所以我的问题是 - 如何让它工作,以便输出我页面上的访客总数。我是否必须跳过我获得profileID的部分,如果这是真的,我该如何调用Core Reporting API?

您无法告诉Google分析从哪个视图请求数据。它链接回您的其他评论

  

输出网站上的访问者总数

个人资料ID是您要从中请求数据的网站的ID。

答案 1 :(得分:0)

您可以在PHP中使用Google Analytics(分析)API客户端。 Google analytic api client library

您可以使用Query Explorer创建要检查的查询。

代码示例:

$analytics = new analytics('username', 'password');
$analytics->setProfileByName('user.name');
//set the date range for which you want stats for 
$analytics->setMonth(date('n'), date('Y'));
// it could also be $analytics->setDateRange('YYYY-MM-DD', 'YYYY-MM-DD'))
print_r($analytics->getVisitors());
print_r($analytics->getPageviews());

以上示例在PHP中使用了Google Analytics(分析)API客户端。这是用PHP发布的第一个库。六年后,该软件已过时。 Google更改了API。 或者,您可以使用GAPI库。 上面是示例它如何工作的示例,您可以包括gapi类以使其起作用。

GAPI Analytic Library

另一种方法是,您可以将 Google Analytics Reporting API v4 用于PHP。 您可以使用composer获得此信息:

composer require google/apiclient:^2.0

Guide to usage of this library is at github