Avertissement : Cette page concerne les anciennes API de Google, les API Google Data. Elle ne s'applique qu'aux API listées dans le répertoire des API Google Data, dont beaucoup ont été remplacées par des API plus récentes. Pour en savoir plus sur une nouvelle API spécifique, consultez sa documentation. Pour savoir comment autoriser les requêtes avec une API plus récente, consultez Authentification et autorisation des comptes Google.
Vidéo : regardez Trevor Johns vous expliquer comment installer la bibliothèque cliente, son architecture et vous présenter un exemple de code.
Mise à jour : octobre 2008 (version originale rédigée par Daniel Holevoet)
- Introduction
- Préinstallation
- Installer PHP
- Installer la bibliothèque cliente Google Data PHP
- Vérifier que vous pouvez accéder aux fichiers de la bibliothèque cliente
- Où en savoir plus
- Annexe A : Modifier votre chemin d'accès PHP dans votre fichier de configuration
php.ini
- Annexe B : Utiliser PHP depuis la ligne de commande
- Annexe C : Conseils et solutions
- Historique des révisions
Introduction
La bibliothèque cliente PHP Google Data est un ensemble puissant de classes qui vous permettent d'interagir avec les API Google Data. Contrairement à nos autres bibliothèques clientes, elle est incluse dans le célèbre Zend Framework, mais peut également être téléchargée séparément. Comme nos autres bibliothèques clientes, elle est également Open Source et conçue pour être simple et efficace, ce qui vous permet de démarrer rapidement vos projets.
Avant l'installation
PHP est peut-être déjà installé sur votre machine de développement ou votre serveur Web. La première étape consiste donc à vérifier ce point et à s'assurer que la version de PHP est suffisamment récente pour être utilisée avec la bibliothèque cliente. Le moyen le plus simple de vérifier cela est de placer un nouveau fichier dans un répertoire accessible sur le Web sur votre serveur. Saisissez les informations suivantes dans le fichier :
<?php phpinfo(); ?>
Ensuite, assurez-vous qu'il est accessible sur le Web en définissant les autorisations appropriées et accédez à son emplacement depuis votre navigateur. Si PHP est installé et que votre serveur est en mesure d'afficher des pages PHP, vous devriez voir quelque chose de similaire à la capture d'écran ci-dessous :

La capture d'écran montre la page d'informations PHP. Cette page affiche la version de PHP qui a été installée (5.2.6 dans ce cas), ainsi que les extensions qui ont été activées (dans la section "Configure Command") et l'emplacement du fichier de configuration interne de PHP (dans la section "Loaded Configuration File"). Si la page ne s'affiche pas ou si votre version de PHP est antérieure à la version 5.1.4, vous devrez installer ou mettre à niveau votre version de PHP. Sinon, vous pouvez ignorer la section suivante et passer à l'installation de la bibliothèque cliente PHP.
Remarque : Si vous avez accès à la ligne de commande et que vous prévoyez d'utiliser PHP pour exécuter des scripts de ligne de commande, veuillez consulter la section sur PHP en ligne de commande de cet article.
Installer PHP
L'installation varie légèrement selon la plate-forme. Il est donc important de suivre les instructions spécifiques à votre plate-forme lors de l'installation. Avant de commencer, il convient de noter que les packages préinstallés qui incluent également le serveur Web Apache et la base de données MySQL avec PHP ont gagné en popularité. Pour Windows, Mac OS X et Linux, il existe le projet XAMPP. Les utilisateurs de Mac OS X peuvent également choisir d'utiliser le projet MAMP. Ces deux packages sont compatibles avec OpenSSL en PHP (requis pour interagir avec les flux authentifiés).
Si vous installez PHP en suivant les étapes ci-dessous, assurez-vous également d'installer et d'activer la compatibilité avec OpenSSL. Pour en savoir plus, consultez la section OpenSSL du site PHP. Les sections suivantes expliquent comment installer PHP seul.
Sous Windows
Le moyen le plus simple d'installer ou de mettre à niveau PHP sous Windows est d'utiliser le programme d'installation PHP disponible sur la page de téléchargement de PHP.
- Choisissez l'option d'installation de PHP (dans la section des binaires Windows) correspondant à la version la plus récente de PHP et autorisez le téléchargement.
- Ouvrez le programme d'installation et suivez les instructions de l'assistant d'installation.
- Lorsque l'assistant vous y invite, choisissez le serveur Web installé sur votre système afin qu'il configure le serveur pour qu'il fonctionne avec PHP.
- Vérifiez votre installation en suivant les étapes décrites dans la section ci-dessus.
Sur Mac OS X
PHP est inclus dans OS X, mais avant de l'utiliser, vous devez passer à la dernière version de PHP. Pour effectuer la mise à niveau, vous pouvez installer l'un des nombreux packages binaires sans frais ou le compiler vous-même. Pour en savoir plus, consultez la page de documentation PHP sur l'installation sur Mac OS X.
Après avoir installé ou configuré OS X, vérifiez votre installation en suivant les étapes décrites dans la section de pré-installation de ce document.
Sous Linux
Selon la distribution Linux, il peut exister une option de configuration intégrée ou facile à utiliser pour l'installation de PHP. Par exemple, sur Ubuntu, vous pouvez utiliser un gestionnaire de paquets ou simplement saisir la commande suivante dans un terminal :
sudo apt-get install php5
Si aucune installation packagée n'est disponible avec votre distribution Linux, vous devez installer à partir du code source. Des instructions détaillées sont disponibles pour compiler PHP pour Apache 1.3 et compiler PHP pour Apache 2. PHP.net propose également des instructions pour d'autres serveurs.
Installer la bibliothèque cliente PHP Google Data
Maintenant que vous avez installé une version fonctionnelle de PHP, il est temps d'installer la bibliothèque cliente. La bibliothèque cliente fait partie du framework Zend Open Source, mais peut également être téléchargée en tant que version autonome. Si vous avez déjà installé une version du Zend Framework (version 1.6 ou ultérieure), vous pouvez ignorer l'installation, car la bibliothèque cliente Google Data est incluse. Toutefois, il est généralement recommandé de s'assurer d'utiliser la dernière version du framework, car cela vous garantit de disposer de toutes les nouvelles fonctionnalités et corrections de bugs.
En téléchargeant le framework complet, vous aurez accès non seulement à la bibliothèque cliente Google Data, mais aussi au reste du framework. La bibliothèque cliente elle-même utilise quelques autres classes qui font partie de l'ensemble du framework Zend, mais il n'est pas nécessaire de télécharger l'ensemble du framework, car nous les avons regroupées dans le téléchargement autonome.
- Téléchargez les fichiers de la bibliothèque cliente Google Data. (Recherchez "API Google Data" sur cette page.)
- Décompressez les fichiers téléchargés. Quatre sous-répertoires doivent être créés :
demos
: exemples d'applicationsdocumentation
: documentation pour les fichiers de la bibliothèque clientelibrary
: fichiers sources de la bibliothèque cliente.tests
: fichiers de tests unitaires pour les tests automatisés.
- Ajoutez l'emplacement du dossier
library
à votre chemin PHP (voir la section suivante).
Vérifier que vous pouvez accéder aux fichiers de la bibliothèque cliente
La dernière étape consiste à vous assurer que vous pouvez référencer et inclure les fichiers de la bibliothèque cliente PHP à partir du répertoire dans lequel vous créez votre projet. Pour ce faire, définissez la variable include_path
dans le fichier de configuration de PHP (php.ini
). La variable include_path
contient un certain nombre d'emplacements de répertoire dans lesquels PHP recherche lorsque vous émettez une instruction require
ou include
qui extrait des classes, des bibliothèques ou des fichiers externes dans votre script actuel, comme l'instruction import
en Java. Vous devez ajouter l'emplacement des fichiers de la bibliothèque cliente à ce qui a déjà été défini dans votre include_path
. Pour ce faire, vous avez le choix entre deux méthodes (toutes deux expliquées en détail ci-dessous) :
- Définissez définitivement la directive
include_path
dans votre fichier de configurationphp.ini
à partir de la ligne de commande. Pour cela, vous devez disposer d'un accès au shell et d'autorisations d'écriture. - Définissez la variable de chemin d'accès
include_path
au niveau de chaque répertoire. Cela nécessite le serveur Web Apache et la possibilité de créer des fichiers.htaccess
. - Utilisez la fonction
set_include_path()
pour définir dynamiquement le chemin d'inclusion dans vos scripts. Vous pouvez le définir dynamiquement dans chacun de vos fichiers .php.
Si vous avez accès au shell et des autorisations d'écriture pour le fichier php.ini
(ou si vous écrivez du code sur votre ordinateur local), suivez simplement les instructions de l'annexe A. Si vous utilisez le serveur Web Apache et que vous avez la possibilité de créer des fichiers .htaccess, vous pouvez définir la variable include_path
au niveau de chaque répertoire. Cela signifie que tous les fichiers du répertoire dans lequel vous travaillez peuvent automatiquement faire référence au répertoire de la bibliothèque cliente.
Vous pouvez spécifier des options de configuration PHP, comme indiqué dans l'extrait ci-dessous :
# This works for PHP5 in both Apache versions 1 and 2 <IfModule mod_php5.c> php_value include_path ".:/usr/local/lib/php:/path/to/ZendGdata/library" </IfModule>
Remarque : Pour en savoir plus sur la modification des paramètres de configuration, consultez le manuel PHP.
Si vous n'avez pas accès au shell de votre serveur et que vous ne pouvez pas modifier ni créer de fichiers .htaccess, vous pouvez toujours utiliser la fonction set_include_path
. Notez que vous avez peut-être déjà défini une valeur pour votre include_path
. Il peut donc être judicieux de suivre le modèle ci-dessous pour ajouter les nouvelles valeurs, au lieu de remplacer l'intégralité du chemin :
$clientLibraryPath = '/path/to/ZendGdata/library'; $oldPath = set_include_path(get_include_path() . PATH_SEPARATOR . $clientLibraryPath);
Remarque : Pour en savoir plus sur la fonction set_include_path
, veuillez consulter les pages du manuel PHP.
Exécuter le vérificateur d'installation PHP
Pour vérifier que votre chemin d'inclusion a été correctement défini, vous pouvez exécuter le script Installation Checker de PHP. Il vous suffit de copier et coller le contenu de ce fichier dans un nouveau fichier situé dans un répertoire accessible sur le Web sur votre serveur, puis d'y accéder depuis votre navigateur. Si vous obtenez un résultat semblable à celui ci-dessous, cela signifie que tout a été correctement configuré et que vous êtes prêt à utiliser la bibliothèque cliente PHP :

Si vous voyez des erreurs (comme dans la capture d'écran ci-dessous), assurez-vous de suivre les instructions. Il vous manque peut-être des extensions ou votre chemin n'est peut-être pas encore défini correctement. N'oubliez pas que vous devrez peut-être redémarrer votre serveur pour que les modifications prennent effet. Cela ne s'applique que si vous modifiez réellement le fichier php.ini
. La capture d'écran ci-dessous montre que include_path
est défini sur /path/to/nowhere
:

Remarque : Veuillez noter que le vérificateur d'installation PHP vérifie les éléments suivants successivement : (1) les extensions PHP requises sont-elles installées ? (2) Le include_path
pointe-t-il vers le répertoire de la bibliothèque cliente PHP ? (3) Les connexions SSL peuvent-elles être établies ? Enfin, une connexion peut-elle être établie avec l'API YouTube Data ? Si un test spécifique échoue, les autres tests ne seront pas exécutés.
Maintenant que la bibliothèque cliente est installée, il est temps d'essayer d'exécuter les exemples.
Exécuter les exemples
À la racine du répertoire Zend/Gdata
se trouve un dossier de démos (exemples pour vous aider à démarrer). Certains de ces exemples sont conçus pour être exécutés à partir de la ligne de commande, comme demos/Zend/Gdata/Blogger.php
et demos/Zend/Gdata/Spreadsheet-ClientLogin.php
. Vous pouvez les exécuter avec php /path/to/example
. Les exemples restants peuvent être exécutés à partir de la ligne de commande et d'un navigateur Web. Si vous souhaitez les afficher dans un navigateur, vous devez les placer dans le répertoire que vous utilisez pour diffuser des pages Web. Ces exemples devraient vous donner une idée de base de la façon d'écrire et d'exécuter une application Google Data. Toutefois, si vous souhaitez en savoir plus, d'autres ressources sont disponibles pour les programmeurs curieux.
Remarque : Si vous souhaitez consulter les démonstrations Web en ligne, veuillez accéder à googlecodesamples.com et rechercher les applications PHP.
Pour en savoir plus
Pour trouver des informations sur les classes qui font partie de la bibliothèque cliente, consultez le guide de référence de l'API sur le site Zend Framework. Veillez à sélectionner le package Zend_Gdata dans le menu déroulant.
Vous devriez maintenant être prêt à commencer à coder. Alors, lancez-vous et écrivez des applications géniales. Nous avons hâte de découvrir vos résultats !
Vous trouverez des guides du développeur PHP pour les services suivants :
La bibliothèque cliente PHP étant un projet Open Source, la compatibilité avec d'autres API est constamment ajoutée. Chaque service dispose de son propre groupe d'assistance. Pour obtenir la liste des groupes d'assistance disponibles, veuillez consulter notre entrée de questions fréquentes.
Si vous avez besoin d'aide pour résoudre les problèmes liés à vos appels d'API, vous trouverez des articles sur le débogage des requêtes API à l'aide d'outils de capture du trafic réseau et sur l'utilisation de serveurs proxy avec les API Google Data. Vous trouverez également quelques articles externes sur l'installation de XAMPP sur Linux et sur l'installation de XAMPP sur Windows. En plus de tous ces articles, n'oubliez pas de consulter les posts sur la bibliothèque cliente PHP sur le blog Google Data API Tips.
Annexe A : Modifier votre chemin d'accès PHP dans votre fichier de configuration php.ini
Le chemin PHP est une variable qui contient une liste d'emplacements que PHP recherche lorsqu'il recherche des bibliothèques supplémentaires lors du chargement. Pour que PHP puisse charger les fichiers de la bibliothèque cliente PHP Google Data et y accéder sur votre ordinateur ou serveur, vous devez les placer dans un emplacement connu de PHP. Vous pouvez également ajouter l'emplacement des fichiers à votre chemin d'accès PHP. Notez que les modifications apportées au fichier php.ini
nécessitent généralement un redémarrage de votre serveur. Vous pouvez toujours vérifier la valeur actuelle de la variable include_path
en accédant à la page d'informations PHP mentionnée précédemment. Recherchez la cellule Fichier de configuration chargé dans le premier tableau, puis recherchez le chemin d'accès dans la colonne de droite.
Remarque : Si vous utilisez PHP à partir de la ligne de commande, vous devrez peut-être modifier une variable de chemin d'accès supplémentaire. Veillez à consulter l'annexe B : Utiliser PHP à partir de la ligne de commande.
Une fois que vous avez trouvé le fichier php.ini
, procédez comme suit pour l'ajouter au chemin d'accès.
- Ouvrez le fichier
php.ini
dans votre éditeur de texte préféré. - Recherchez la ligne faisant référence au chemin PHP. Elle doit commencer par
include_path
. - Ajoutez le chemin d'accès où vous avez stocké Zend Framework à la liste des emplacements déjà présents, en ajoutant votre nouveau chemin d'accès avec le séparateur désigné pour votre OS (
:
sur les systèmes de type Unix,;
sur Windows). Sur les systèmes de type Unix, un chemin correct se présente comme suit : Sous Windows, cela ressemblerait à ceci :/path1:/path2:/usr/local/lib/php/library
\path1;\path2;\php\library
- Enregistrez et fermez le fichier.
Remarque : Sur Mac OS X, le Finder n'autorise pas l'accès aux fichiers situés dans des emplacements système tels que le répertoire /etc
. Il peut donc être plus facile de les modifier à l'aide d'un éditeur de ligne de commande tel que vi
ou pico
. Pour ce faire, utilisez une commande telle que pico /path/to/php.ini
.
Annexe B : Utiliser PHP depuis la ligne de commande
Depuis la version 5 de PHP, un utilitaire de ligne de commande est disponible dans PHP. Il est appelé CLI pour "command line interpreter" (interpréteur de ligne de commande). Cet utilitaire permet d'exécuter des scripts PHP à partir de la ligne de commande. Cela peut être utile si vous exécutez PHP localement sur votre ordinateur et que vous cherchez des moyens de tester rapidement certains scripts. Sur votre serveur, bien sûr. Pour cela, vous aurez besoin d'un accès shell. Il est important de noter que PHP utilise généralement deux fichiers php.ini
distincts : l'un contient les options de configuration pour PHP s'exécutant sur votre serveur, et l'autre pour les configurations que PHP utilise lors de l'exécution à partir de la ligne de commande. Si vous souhaitez exécuter les applications de démonstration en ligne de commande à partir de la bibliothèque cliente, vous devrez également modifier le fichier php.ini
de ligne de commande.
Pour le trouver, saisissez les commandes suivantes sur les systèmes de type Unix (Mac OS X, Linux et autres) :
php -i | grep php.ini
Cette commande devrait afficher les informations suivantes dans votre terminal :
Configuration File (php.ini) Path => /etc/php5/cli Loaded Configuration File => /etc/php5/cli/php.ini
Remarque : Bien sûr, les emplacements de chemin d'accès réels (/etc/php...
) peuvent varier sur votre système.
Annexe C : Conseils et solutions
Cette section présente brièvement certains des problèmes que les développeurs ont rencontrés lorsqu'ils travaillaient avec PHP, ainsi que les solutions appropriées.
Problème lié à l'extension dom-xml dans XAMPP
La bibliothèque cliente PHP utilise les classes DOMDocument pour transformer les requêtes et les réponses XML en objets PHP. L'extension dom-xml
peut entraîner des problèmes de gestion XML et des transformations incorrectes. Certains de nos développeurs ont constaté que, lors de l'utilisation de XAMPP, le constructeur DOMDocument est remplacé par un appel de fonction plus ancien, comme expliqué sur le site PHP. Pour résoudre ce problème, assurez-vous que la gestion XML n'est pas remplacée dans votre fichier php.ini
. Veillez à supprimer les références à php_domxml.dll
de votre fichier de configuration.
Les requêtes expirent lorsque j'utilise la bibliothèque cliente
Si vous utilisez la bibliothèque cliente pour effectuer des requêtes assez volumineuses, comme l'importation de vidéos dans l'API YouTube Data, vous devrez peut-être modifier le paramètre timeout
dans votre classe Zend_Http_Client
. Pour cela, il suffit de transmettre un paramètre $config
lors de l'instanciation, ce qui définit la valeur timeout
sur une valeur autre que la valeur par défaut de 10 secondes :
// assuming your Zend_Http_Client already exists as $httpClient // and that you want to change the timeout from the 10 second default to 30 seconds $config = array('timeout' => 30); $httpClient->setConfig($config);
Certains fournisseurs d'hébergement n'autorisent pas les connexions HTTPS depuis leurs serveurs.
Nous avons appris que certains fournisseurs d'hébergement ne vous autorisent pas à établir des connexions https
à partir de leurs serveurs par défaut. Si vous recevez un message d'erreur semblable à celui ci-dessous, vous devrez peut-être établir vos connexions HTTPS via un proxy sécurisé :
Unable to Connect to sslv2://www.google.com:443. Error #110: Connection timed out
Votre hébergeur doit disposer d'informations sur l'adresse réelle du serveur proxy à utiliser. L'extrait ci-dessous montre comment utiliser une configuration de proxy personnalisée avec la bibliothèque cliente PHP :
// Load the proxy adapter class in addition to the other required classes Zend_Loader::loadClass('Zend_Http_Client_Adapter_Proxy'); // Configure the proxy connection with your hostname and portnumber $config = array( 'adapter' => 'Zend_Http_Client_Adapter_Proxy', 'proxy_host' => 'your.proxy.server.net', 'proxy_port' => 3128 ); // A simple https request would be an attempt to authenticate via ClientLogin $proxiedHttpClient = new Zend_Http_Client('http://www.google.com:443', $config); $username = 'foo@example.com'; $password = 'barbaz'; // The service name would depend on what API you are interacting with, here // we are using the Google DocumentsList Data API $service = Zend_Gdata_Docs::AUTH_SERVICE_NAME; // Try to perform the ClientLogin authentication using our proxy client. // If there is an error, we exit since it doesn't make sense to go on. try { // Note that we are creating another Zend_Http_Client // by passing our proxied client into the constructor. $httpClient = Zend_Gdata_ClientLogin::getHttpClient( $username, $password, $service, $proxiedHttpClient); } catch (Zend_Gdata_App_HttpException $httpException) { // You may want to handle this differently in your application exit("An error occurred trying to connect to the proxy server\n" . $httpException->getMessage() . "\n"); }
Historique des révisions
1er octobre 2008
Mis à jour par Jochen Hartmann. Cette mise à jour inclut les changements suivants :
- Clarification de la configuration PHP pour les serveurs Web en déplaçant les sections qui font référence à PHP en ligne de commande dans un appendice.
- Ajout d'une note sur les fichiers de configuration php.ini multiples.
- Ajout de sections sur la façon de définir dynamiquement le chemin d'inclusion.
- Ajout d'une section sur le script de vérification de l'installation.
- Ajout d'un lien vers des exemples en ligne.
- Ajout de liens pour XAMPP et MAMP.
- Ajout d'une annexe "Conseils et solutions".