29.6. Zend_Service_Flickr

29.6.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 29.24. 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] Optionale Parameter

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

29.6.2. Bilder und Informationen von Flickr Benutzern finden

Zend_Service_Flickr stellt verschiedene unterschiedliche Wege zur Verfügung um Informationen von Flickr Benutzern 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 Set von Photos als 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 29.25. Finden von öffentlichen Photos 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 öffentlichen Photos eines Benutzer 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 />';
}
?>       

29.6.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 29.26. 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";
?>       

29.6.4. Zend_Service_Flickr Ergebnis Klassen

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

29.6.4.1. Zend_Service_Flickr_ResultSet

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

[Anmerkung] Anmerkung

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

29.6.4.1.1. Eigenschaften

Tabelle 29.12. 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
29.6.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

29.6.4.2. Zend_Service_Flickr_Result

Ein einzelnes Bild Ergebnis von einer Flickr Suche

29.6.4.2.1. Eigenschaften

Tabelle 29.13. Zend_Service_Flickr_Result Eigenschaften

Name Typ Beschreibung
id string Image ID
owner string 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 string Ist das Bild öffentlich ?
isfriend string Das Bild ist sichtbar, weil man ein Freund des Eigentümers ist.
isfamily string Das Bild ist sichtbar, weil man Familienmitglied des Eigentümers ist.
license string Die Lizenz des Bildes ist erreichbar unter.
dateupload string Das Datum an dem das Bild hochgeladen wurde.
datetaken string Das Datum an dem das Bild gemacht wurde.
ownername string Der Bildschirmname des Eigentümers.
iconserver 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

29.6.4.3. Zend_Service_Flickr_Image

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

29.6.4.3.1. Eigenschaften

Tabelle 29.14. 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