13.4. Zend_Service_Flickr
Précédent | Chapitre 13. Zend_Service | Suivant

## 13.4. Zend_Service_Flickr

### 13.4.1. Introduction à la recherche sur Flickr

`Zend_Service_Flickr` est une API simple pour utiliser le service Wev REST de Flick. Pour pouvoir utiliser lew services Web Flickr, vous devez avoir une clé d'utilisation de l'API. Pour obtenir une telle clé, et pour plus d'information sur le service Web REST de Flickr, veuillez vous référrez à la documentation de l'API Flickr.

Dans l'exemple suivant, nous allons utiliser la méthode `tagSearch()` pour rechercher des photos ayant "php" dans les tags.

Exemple 13.8. Simple recherche de photos sur Flickr

    <?php
    require_once 'Zend/Service/Flickr.php';

    $flickr = new Zend_Service_Flickr('MA_CLE_API');

    $results = $flickr->tagSearch("php");

    foreach ($results as $result) {
        echo $result->title . '<br />';
    }
    ?>

| Note
`tagSearch()` accepte un tableau d'options comme second paramètre optionnel.

### 13.4.2. Trouver des utilisateurs Flickr

`Zend_Service_Flickr`fournit 3 façons différentes de récupérer des informations sur les utilisateurs.

- `userSearch()`: Accepte une chaîne de caractère de balise délimitée par des espaces, et un tableau d'options en second paramère optionnel. Elle retourne un objet `Zend_Service_Flickr_ResultSet`.
- `getIdByUsername()`: Retourne l'identifiant utilisateur, correspondant à son nom d'utilisateur.
- `getIdByEmail()`: Retourne l'identifiant utilisateur correspondant à l'adresse email donnée.

Exemple 13.9. Trouver un utilisateur Flickr par son adresse email

Dans cet exemple, nous havons une adresse email d'un utilisateur Flickr, et nous récupérons ses informations utilisateurs en utilisant la méthode `userSearch()` :

    <?php
    require_once 'Zend/Service/Flickr.php';

    $flickr = new Zend_Service_Flickr('MA_CLE_API');

    $results = $flickr->userSearch($userEmail);

    foreach ($results as $result) {
        echo $result->title . '<br />';
    }
    ?>

### 13.4.3. Récupérer les détails d'une image

`Zend_Service_Flickr` permet de récupérer facilement et rapidement, les détails d'une image grâce à son ID. Utilisez simplement la méthode `getImageDetails()`, comme dans l'exemple suivant :

Exemple 13.10. Récupérer les détails d'une image

Une fois que vous avez l'identifiant de l'image Flickr, il est simple de retrouver les informations qui lui sont associées :

    <?php
    require_once 'Zend/Service/Flickr.php';

    $flickr = new Zend_Service_Flickr('MA_CLE_API');

    $image = $flickr->getImageDetails($imageId);

    echo "ID de l'image : $imageId, taille : $image->width x $image->height pixels.<br />\n";
    echo "<a href=\"$image->clickUri\">Clicker pour l'image</a>\n";
    ?>

### 13.4.4. Classes Zend_Service_Flickr

Les classes suivantes sont toutes retournées par `tagSearch()` et `userSearch()` :

- `Zend_Service_Flickr_ResultSet`

- `Zend_Service_Flickr_Result`

- `Zend_Service_Flickr_Image`

#### 13.4.4.1. Zend_Service_Flickr_ResultSet

Représente le jeu de résultats d'une recherche sur Flickr.

| Note
Implémente l'itérateur `SeekableIterator` (ie en utilisant `foreach`), ainsi qu'un accès direct à un résultat particulier en utilisant `seek()`.

##### 13.4.4.1.1. Propriétés

Tableau 13.10. Propriétés Zend_Service_Flickr_ResultSet

Nom | Type | Description
--- | --- | ---
totalResultsAvailable | int | Nombre total de résultats disponibles
totalResultsReturned | int | Nombre total de résultats retournés
firstResultPosition | int | ??? The offset in the total result set of this result set ???

##### 13.4.4.1.2. Zend_Service_Flickr_ResultSet::totalResults()

`int totalResults();`

Retourne le nombre de totale de résultats dans ce jeu de résultats.

Retour à la liste des classes

#### 13.4.4.2. Zend_Service_Flickr_Result

Un seule image résultant d'une requête sur Flickr.

##### 13.4.4.2.1. Propriétés

Tableau 13.11. Propriétés Zend_Service_Flickr_Result

Nom | Type | Description
--- | --- | ---
id | int | Identifiant de l'image
owner | int | Le NSID du propriétaire de la photo.
secret | string | La clé utilisée dans la construction de l'URL.
server | string | Le nom du serveur à utiliser pour construire l'URL.
title | string | Le titre de la photo.
ispublic | boolean | La photo est publique.
isfriend | boolean | Vous pouvez voir la photo parce que vous êtes un ami du propriétaire de cette photo.
isfamily | boolean | Vous pouvez voir la photo parce que vous êtes de la famille du propriétaire de cette photo.
license | string | La licence sous laquelle cette photo est disponible.
date_upload | string | La date à laquelle la photo a été uploadée.
date_taken | string | La date à laquelle la photo a été prise.
owner_name | string | Le ??? screenname ??? du propriétaire de la photo.
icon_server | string | Le serveur utilisé pour l'assemblage des ??? icon URLs ???.
Square | Zend_Service_Flickr_Image | Une miniature de l'image au format 75x75 pixels.
Thumbnail | Zend_Service_Flickr_Image | Une miniature de l'image de 100 pixels.
Small | Zend_Service_Flickr_Image | Une version en 240 pixels de l'image.
Medium | Zend_Service_Flickr_Image | Une version en 500 pixel version de l'image.
Large | Zend_Service_Flickr_Image | Une version en 640 pixel version de l'image.
Original | Zend_Service_Flickr_Image | L'image originale.

Retour à la liste des classes

#### 13.4.4.3. Zend_Service_Flickr_Image

Représente une image retournée pour une recherche Flickr.

##### 13.4.4.3.1. Propriétés

Tableau 13.12. Propriétés Zend_Service_Flickr_Image

Nom | Type | Description
--- | --- | ---
uri | string | URI de l'image originale.
clickUri | string | URI cliquable (ie la page Flickr) de l'image.
width | int | Largeur de l'image.
height | int | Hauteur de l'image.

Retour à la liste des classes

Précédent | Niveau supérieur | Suivant
13.3. Zend_Service_Amazon | Sommaire | 13.5. Zend_Service_Yahoo