Commit 2d10f81895e3317d910557158f44ab054d7fc0a6

Authored by Alex Savenko
1 parent 049efd92

testing

Showing 1 changed file with 62 additions and 5 deletions   Show diff stats
backend/views/report/index.php
... ... @@ -19,10 +19,67 @@ $this->params['breadcrumbs'][] = $this->title;
19 19 <div>
20 20 <h1><?= Html::encode($this->title) ?></h1>
21 21 <?php
22   - $service = new Google_Service_Translate(\Yii::$app->googleApi->client);
23   - $result = $service->languages->listLanguages([
24   - 'target' => 'ru'
25   - ]);
26   - print_r($result);
  22 + $analytics = new Google_Service_AnalyticsReporting(\Yii::$app->googleApi->client);
  23 +
  24 + // Вызов the Analytics Reporting API V4.
  25 + $response = getReport($analytics);
  26 +
  27 + // Вывод ответа.
  28 + printResults($response);
  29 +
  30 + function getReport($analytics) {
  31 +
  32 + // Замена на свой идентификатор представления, напр. XXXX.
  33 + $VIEW_ID = "119240817";
  34 +
  35 + // Создание объекта DateRange.
  36 + $dateRange = new Google_Service_AnalyticsReporting_DateRange();
  37 + $dateRange->setStartDate("7daysAgo");
  38 + $dateRange->setEndDate("today");
  39 +
  40 + // Создание объекта Metrics.
  41 + $sessions = new Google_Service_AnalyticsReporting_Metric();
  42 + $sessions->setExpression("ga:sessions");
  43 + $sessions->setAlias("sessions");
  44 +
  45 + // Создание объекта ReportRequest.
  46 + $request = new Google_Service_AnalyticsReporting_ReportRequest();
  47 + $request->setViewId($VIEW_ID);
  48 + $request->setDateRanges($dateRange);
  49 + $request->setMetrics(array($sessions));
  50 +
  51 + $body = new Google_Service_AnalyticsReporting_GetReportsRequest();
  52 + $body->setReportRequests( array( $request) );
  53 + return $analytics->reports->batchGet( $body );
  54 + }
  55 +
  56 + function printResults($reports) {
  57 + for ( $reportIndex = 0; $reportIndex < count( $reports ); $reportIndex++ ) {
  58 + $report = $reports[ $reportIndex ];
  59 + $header = $report->getColumnHeader();
  60 + $dimensionHeaders = $header->getDimensions();
  61 + $metricHeaders = $header->getMetricHeader()->getMetricHeaderEntries();
  62 + $rows = $report->getData()->getRows();
  63 +
  64 + for ( $rowIndex = 0; $rowIndex < count($rows); $rowIndex++) {
  65 + $row = $rows[ $rowIndex ];
  66 + $dimensions = $row->getDimensions();
  67 + $metrics = $row->getMetrics();
  68 + for ($i = 0; $i < count($dimensionHeaders) && $i < count($dimensions); $i++) {
  69 + print($dimensionHeaders[$i] . ": " . $dimensions[$i] . "\n");
  70 + }
  71 +
  72 + for ($j = 0; $j < count( $metricHeaders ) && $j < count( $metrics ); $j++) {
  73 + $entry = $metricHeaders[$j];
  74 + $values = $metrics[$j];
  75 + print("Metric type: " . $entry->getType() . "\n" );
  76 + for ( $valueIndex = 0; $valueIndex < count( $values->getValues() ); $valueIndex++ ) {
  77 + $value = $values->getValues()[ $valueIndex ];
  78 + print($entry->getName() . ": " . $value . "\n");
  79 + }
  80 + }
  81 + }
  82 + }
  83 + }
27 84 ?>
28 85 </div>
29 86 \ No newline at end of file
... ...