Skip to content

reactmore/google-analytic-api-client

Folders and files

NameName
Last commit message
Last commit date

Latest commit

2703f73 · Jul 22, 2023

History

17 Commits
Oct 5, 2022
Oct 5, 2022
Oct 5, 2022
Oct 5, 2022
Oct 6, 2022
Jul 22, 2023
Oct 6, 2022

Repository files navigation

Google Analytic API Client

Latest Stable Version Total Downloads Latest Unstable Version License PHP Version Require

PHP library to help you integrate your system to API Google Analytics.

Installation

composer require reactmore/google-analytic-api-client 

Configuration .env optional :

VIEW_ID=215165900
SERVICE_CREDENTIALS_JSON= 'google_analytic_services.json'

Usage :

require 'vendor/autoload.php';

use Reactmore\GoogleAnalyticApi\Analytics;
use Reactmore\GoogleAnalyticApi\Helpers\Period;

// Auto Get from Dotenv
$Analytics = new Analytics();
// or manual
$Analytics = new Analytics([
'view_id' => 21312312313,
'service_credentials_json' => 'path/to/google_analytic_services.json'
]);

echo '<pre>';
var_dump($Analytics->Fetching()->fetchUserTypes(Period::days(7)));
echo '</pre>';

// Method 
$Analytics = new Analytics();
// Fetch Users and New Users
$Analytics->Fetching()->fetchUserTypes(Period::days(7));
// Get Data Top Browser used visitor
$Analytics->Fetching()->fetchTopBrowsers(Period::days(7));
// Get Data Refferer Page
$Analytics->Fetching()->fetchTopReferrers(Period::days(7));
// Populer Pages
$Analytics->Fetching()->fetchMostVisitedPages(Period::days(7));
// Get Visitor and Pageviews
$Analytics->Fetching()->fetchTotalVisitorsAndPageViews(Period::days(7));

Example Output Array :

array(2) {
  [0]=>
  array(2) {
    ["type"]=>
    string(11) "New Visitor"
    ["sessions"]=>
    int(2581)
  }
  [1]=>
  array(2) {
    ["type"]=>
    string(17) "Returning Visitor"
    ["sessions"]=>
    int(1215)
  }
}
// Custom Query
$Analytics->Fetching()->performQuery($period, $metrix, $other = array());
// Example
$Analytics->Fetching()->performQuery(Period::days(7), 'ga:sessions', ['dimensions' => 'ga:country', 'sort' => '-ga:sessions'])->getRows();

Example Output Raw Array :

array(30) {
  [0]=>
  array(2) {
    [0]=>
    string(9) "Indonesia"
    [1]=>
    string(4) "3534"
  }
  [1]=>
  array(2) {
    [0]=>
    string(11) "Afghanistan"
    [1]=>
    string(2) "96"
  }
  [2]=>
  array(2) {
    [0]=>
    string(13) "United States"
    [1]=>
    string(2) "88"
  } 
}

Explore Query on this App ga-dev-tools

Screenshot

Backend

About

Google Analytic Api Client PHP

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages