2016-06-13 11 views
15

Der folgende Code gibt ein Objekt von Google_Service_AnalyticsReporting_GetReportsResponseAnalytics API & PHP - Get Berichte in verschiedenen Formaten

$body = new Google_Service_AnalyticsReporting_GetReportsRequest(); 
$body->setReportRequests($aRequests); 
return $this->oAnalytics->reports->batchGet($body); 

Ich frage mich, wenn ich Berichte in einem anderen Format bekommen, Beispiel: Array(Dimension,value)

Antwort

6

Ja.

Das Google Reporting v4 SDK für PHP sieht so aus, als wäre es automatisch aus Java-Code konvertiert worden, genau wie alle üblichen Objekt-Overkills.

auf ein Array zu konvertieren, vorausgesetzt, Sie für eine Dimension und einige Metriken gefragt:

$data = [] 
foreach ($this->oAnalytics->reports->batchGet($body)->getReports()[0]->getData()->getRows() as $row) { 
    $key = $row->dimensions[0]; // chose a unique value or dimension that works for your app, or remove and use $data[] = $value; below 
    $values = array_merge($row->metrics, $row->dimensions);  
    $data[$key] = $value; 
} 
+1

zu etwas Nekrophilie Zugegeben, war dieser Beitrag das einzige Google Sucher für den Google-API PHP SDK verrückt Klassennamen. – cmc

1
$client = new \Google_Client(); 
$cred = new \Google_Auth_AssertionCredentials(
      $serviceAccountEmail, 
      array(\Google_Service_Analytics::ANALYTICS_READONLY), 
      $key 
     ); 
$client->setAssertionCredentials($cred); 

if ($client->getAuth()->isAccessTokenExpired()) { 
      $client->getAuth()->refreshTokenWithAssertion($cred); 
} 
$analytics = new \Google_Service_Analytics($client); 
$row = $analytics->data_ga->get(
        'ga:' . $profileId, 
        $startdate, 
        $enddate, 
        $metrics, 
        array(
         'dimensions' => $dimension, 
         'sort'  => $metrics, 
         'max-results' => 20, 
        ) 
       ); 

Diese den Job für mich getan.

$ row etwas gibt wie folgt

array(5 items) 
    0 => array(2 items) 
     0 => 'India' (5 chars) 
     1 => '1' (1 chars) 
    1 => array(2 items) 
     0 => 'Taiwan' (6 chars) 
     1 => '1' (1 chars) 
    2 => array(2 items) 
     0 => 'United States' (13 chars) 
     1 => '1' (1 chars) 
    3 => array(2 items) 
     0 => '(not set)' (9 chars) 
     1 => '4' (1 chars) 
    4 => array(2 items) 
     0 => 'United Kingdom' (14 chars) 
     1 => '82' (2 chars) 
Verwandte Themen