Looping through the Google Analytics API PHP class data
Posted May 5th, 2009 in PHP
Thanks for Jim Snyder from www.net-netanalytics.com for pointing out my examples were lacking the information to show how to loop through the resulting data from my Google Analytics API PHP Class. I have now update the examples file and also include the information about how to loop through the data in this post. You can always download the most recent version of my PHP class here.
The resulting array of data returned from the data() function is a multi dimensional array. The index(es) of the array are the dimensions passed in and then the value is another array with one vale for each of the metrics.
Looping through a single dimension
If, for example, you wanted to get the pagePath dimension and the pageviews and uniquePageviews metrics for pagePath, the data call would look like this:
$data = $api->data($id, 'ga:pagePath', 'ga:pageviews,ga:uniquePageviews');
You can then loop through the data like this:
foreach($data as $dimension => $metrics) {
echo "$dimension pageviews: {$metrics['ga:pageviews']} unique pageviews: {$metrics['ga:uniquePageviews']}\n";
}
Looping through two dimensions
This example gets the browser and version as the dimensions and then visits and pageviews as the metrics. This requires an outer loop and an inner loop. The data call looks like this:
$data = $api->data($id, 'ga:browser,ga:browserVersion', 'ga:visits,ga:pageviews', false, false, false, 100);
The loop looks like this:
foreach($data as $dimension1 => $array) {
foreach($array as $dimension2 => $metrics) {
echo "$dimension1 $dimension2 visits: {$metrics['ga:visits']} pageviews: {$metrics['ga:pageviews']}\n";
}
}
And some of the resulting output looks like this:
Internet Explorer 7.0 visits: 13486 pageviews: 16232 Internet Explorer 6.0 visits: 4823 pageviews: 5932 Internet Explorer 8.0 visits: 3047 pageviews: 3805 Internet Explorer 999.1 visits: 15 pageviews: 15
You could also access the pageviews value directly for Internet Explorer 8 like this:
echo $data['Internet Explorer']['8.0']['ga:pageviews'], "\n";
Related posts:
- The Google Analytics API and PHP: A series (Tuesday, April 28th 2009)
Share or Bookmark
Share or Bookmark this page using the following services. You will need to have an account with the selected service in order to post links or bookmark this page.
Subscribe or Follow
Subscribe via RSS or email, or follow me on Facebook or Twitter below. The RSS icon takes you through to Feedburner where you can select the service or application to use.
