16.4. Zend_Service_Flickr
Zurück | Kapitel 16. Zend_Service | Weiter

## 16.4. Zend_Service_Flickr

### 16.4.1. Einführung in die Suche mit Flickr

`Zend_Service_Flickr` ist eine einfache API um den Flickr REST Web Service zu nutzen. Für die Benutzung des Flickr Web Service, benötigt man einen API Schlüssel. Um diesen Schlüssel zu bekommen und für weitergehende Informationen über den Flickr REST Web Service besuchen Sie bitte die Flickr API Dokumentation.

Im folgenden Bespiel benutzen wir die `tagSearch()` Methode um Photos zu suchen welche "php" im Tag haben.

Beispiel 16.8. Simple Flickr Photo Suche

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

    $flickr = new Zend_Service_Flickr('MY_API_KEY');

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

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

| Anmerkung
`tagSearch()` aktepziert als optionalen zweiten Parameter ein Array mit Optionen.

### 16.4.2. Flickr Benutzer finden

`Zend_Service_Flickr` stellt 3 unterschiedliche Wege zur Verfügung um Informationen über Flickr Benutzer zu bekommen:

- `userSearch()`: Akzeptiert ein String Abfrage von mit Leerzeichen getrennten Tags und als optionalen zweiten Parameter ein Array mit Such Optionen. Zurückgegeben wird ein `Zend_Service_Flickr_ResultSet` Objekt.
- `getIdByUsername()`: Gibt die Benutzer ID als String zurück, welcher mit dem übergebenen String des Benutzernamens verknüpft ist.
- `getIdByEmail()`: Gibt die Benutzer ID als String zurück, welcher mit dem übergebenen String der Email Adresse verknüpft ist.

Beispiel 16.9. Finden eines Flickr Benutzers durch seine E-Mail Adresse

In diesem Beispiel haben wir die E-Mail adresse eines Flickr Benutzers und wir holen uns die Benutzer Informationen durch Verwendung der `userSearch()` Methode:

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

    $flickr = new Zend_Service_Flickr('MY_API_KEY');

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

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

### 16.4.3. Empfangen von Details zu Bildern durch Flickr

`Zend_Service_Flickr` erlaubt es schnell und einfach an Details zu Bilders zu kommen, basieren auf einer übergebenen ID des Bildes. Einfach durch benutzen der `getImageDetails()` Methode, wie im folgenden Beispiel:

Beispiel 16.10. Empfangen von Details zu Bildern durch Flickr

Sobald man eine Flickr Bild ID hat, ist es eine einfache Angelegenheit, Informationen über ein Bild zu bekommen:

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

    $flickr = new Zend_Service_Flickr('MY_API_KEY');

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

    echo "Bild ID $imageId ist $image->width x $image->height Pixel groß.<br />\n";
    echo "<a href=\"$image->clickUri\">Klicken für das Bild</a>\n";
    ?>

### 16.4.4. Zend_Service_Flickr Klassen

Die folgenden Klassen werden durch `tagSearch()` und `userSearch()` zurückgegeben:

- `Zend_Service_Flickr_ResultSet`

- `Zend_Service_Flickr_Result`

- `Zend_Service_Flickr_Image`

#### 16.4.4.1. Zend_Service_Flickr_ResultSet

Repräsentiert ein Set von Ergebnissen von einer Flickr Suche.

| Anmerkung
Implementiert einen `SeekableIterator` für einfache Iteration (z.B. benutzen von `foreach` ), sowie einen direkten Zugriff auf ein spezielles Ergebnis durch benutzen von `seek()` .

##### 16.4.4.1.1. Eigenschaften

Tabelle 16.10. Zend_Service_Flickr_ResultSet Eigenschaften

Name | Typ | Beschreibung
--- | --- | ---
totalResultsAvailable | int | Gesamt Anzahl aller gefundenen Ergebnisse
totalResultsReturned | int | Gesamt Anzahl der zurückgegebenen Ergebnisse
firstResultPosition | int | Das Offset im Gesamtergebnis für dieses Ergebnis Set

##### 16.4.4.1.2. Zend_Service_Flickr_ResultSet::totalResults()

`int totalResults();`

Gibt die Gesamt Anzahl der Ergebnisse für dieses Ergebnis Set zurück.

Zurück zur Liste der Klassen

#### 16.4.4.2. Zend_Service_Flickr_Result

Ein einzelnes Bild Ergebnis von einer Flickr Suche

##### 16.4.4.2.1. Eigenschaften

Tabelle 16.11. Zend_Service_Flickr_Result Eigenschaften

Name | Typ | Beschreibung
--- | --- | ---
id | int | Image ID
owner | int | Die NSID des Eigentümers des Photos.
secret | string | Ein Schlüssel welcher beim URL Aufbau benutzt wird.
server | string | Der Servername welcher beim URL Aufbau benutzt wird.
title | string | Die Überschrift des Bildes.
ispublic | boolean | Ist das Bild öffentlich ?
isfriend | boolean | Das Bild ist sichtbar, weil man ein Freund des Eigentümers ist.
isfamily | boolean | Das Bild ist sichtbar, weil man Familienmitglied des Eigentümers ist.
license | string | Die Lizenz des Bildes ist erreichbar unter.
date_upload | string | Das Datum an dem das Bild hochgeladen wurde.
date_taken | string | Das Datum an dem das Bild gemacht wurde.
owner_name | string | Der Bildschirmname des Eigentümers.
icon_server | string | Der Server welcher benutzt wurde um die Icon URL zu erstellen.
Square | Zend_Service_Flickr_Image | Ein 75x75 Thumbnail des Bildes.
Thumbnail | Zend_Service_Flickr_Image | Ein 100 Pixel Thumbnail des Bildes.
Small | Zend_Service_Flickr_Image | Eine 240 Pixel Version des Bildes.
Medium | Zend_Service_Flickr_Image | Eine 500 Pixel Version des Bildes.
Large | Zend_Service_Flickr_Image | Eine 640 Pixel Version des Bildes.
Original | Zend_Service_Flickr_Image | Das Original Bild.

Zurück zur Liste der Klassen

#### 16.4.4.3. Zend_Service_Flickr_Image

Repräsentiert ein Bild welches durch eine Flickr Suche zurückgegeben wird.

##### 16.4.4.3.1. Eigenschaften

Tabelle 16.12. Zend_Service_Flickr_Image Eigenschaften

Name | Typ | Beschreibung
--- | --- | ---
uri | string | URI des Original Bildes
clickUri | string | Klickbare URI (z.B. die Flickr Seite) für das Bild
width | int | Breite des Bildes
height | int | Höhe des Bildes

Zurück zur Liste der Klassen

Zurück | Nach oben | Weiter
16.3. Zend_Service_Amazon | Zum Anfang | 16.5. Zend_Service_Yahoo