dag/google-api-php-client

Google API library for PHP

This package's canonical repository appears to be gone and the package has been frozen as a result.

dev-master 2015-10-13 07:48 UTC

This package is not auto-updated.

Last update: 2019-03-01 00:08:29 UTC


README

Description

The Google API Client Library enables you to work with Google APIs such as Buzz, Moderator, Tasks, or Latitude on your server.

Warning: Currently only the following services are working

  • books service (only volumes service without authentication tested)
  • freebase
  • urlshortener
  • plus
  • tasks
  • analytics
  • prediction (so far only predict method is working)

Based on:

Current version is hosted here:

A Composer package of the latest build can be found at packagist http://packagist.org/packages/dag/google-api-php-client

Fork information

This project was forked made the library compatible with modern techniques like DI and to get rid of the global like static config object:

  • Replaced the Config class with a non static version which is constructor injected into the classes which use the configuration object.
  • Refactored the Services to one class per file with proper namespacing to support PSR-0 autoloading
  • Specified fully qualified classnames for factory keys

TODO:

  • Refactore all other services
  • Replace config usage in Models which should not be config aware. (e.g GoogleApi\Service\Model)

The existing documentation applies, just keep in mind that instead of class like apiHttpRequest, you must now use \GoogleApi\Io\HttpRequest.

Requirements:

Project page:

OAuth 2 instructions:

Report a defect or feature request here:

Subscribe to project updates in your feed reader:

Supported sample applications:

Basic Example

<?php
include 'vendor/.composer/autoload.php';

$config = new \GoogleApi\Config();
$client = new \GoogleApi\Client($config);
$service = new \GoogleApi\Contrib\Books\Service($client);

$optParams = array('filter' => 'free-ebooks');
$results = $service->volumes->listVolumes('Henry David Thoreau', $optParams);

foreach ($results['items'] as $item) {
  print($item['volumeInfo']['title'] . '<br>');
}