29.6. Zend_Service_Flickr

29.6.1. Wprowadzenie do przeszukiwania Flickr

Zend_Service_Flickr jest prostym API do użycia z serwisem Flickr REST Web Service. W celu użycia web serwisów Flickr, musisz posiadać klucz API. Aby zdoby klucz i uzyskać więcej informacji o Flickr REST Web Service, odwiedź dokumentację Flickr API.

W poniższym przykladzie, używamy metody tagSearch() do wyszukiwania zdjęć zawierających etykietę "php".

Przykład 29.24. Proste wyszukiwanie zdjęć Flickr

<?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 />';
}
?>       
[Notatka] Opcjonalny parametr

Metoda tagSearch() akceptuje tablicę opcji jako opcjonalny drugi parametr.

29.6.2. Wyszukiwanie zdjęć użytkowników Flickr i informacji o nich

Klasa Zend_Service_Flickr zapewnia kilka możliwości pobierania informacji o użytkownikach serwisu Flickr:

  • userSearch(): akceptuje w parametrze treść zapytania w postaci etykiet oddzielonych spacją oraz tablicę opcji wyszukiwania jako opcjonalny drugi parametr, a zwraca zestaw zdjęć jako obiekt Zend_Service_Flickr_ResultSet.

  • getIdByUsername(): Zwraca ID użytkownika powiązane z podaną nazwą użytkownika.

  • getIdByEmail():Zwraca ID użytkownika powiązane z podanym adresem email.

Przykład 29.25. Wyszukiwanie publicznych zdjęć użytkownika serwisu Flickr na podstawie adresu e-mail

W tym przykładzie, posiadamy adres e-mail użytkownika serwisu Flickr i szukamy publicznych zdjęć użytkownika używając metody userSearch():

<?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. Pobieranie szczegółów zdjęcia Flickr

Zend_Service_Flickr ułatwia pobieranie informacji o zdjęciu na podstawie podanego ID zdjęcia. Po prostu użyj metody getImageDetails(), tak jak w poniższym przykładzie:

Przykład 29.26. Pobieranie szczegółów zdjęcia Flickr

Jeśli posiadasz ID zdjęcia Flickr, pobranie informacji o zdjęciu jest bardzo proste:

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

$flickr = new Zend_Service_Flickr('MY_API_KEY');

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

echo "Obrazek o ID $imageId ma rozmiar $image->width x $image->height pikseli.<br />\n";
echo "<a href=\"$image->clickUri\">Click for Image</a>\n";
?>

29.6.4. Klasy wyników Zend_Service_Flickr

Poniższe klasy są zwracane przez metody tagSearch() oraz userSearch():

29.6.4.1. Zend_Service_Flickr_ResultSet

Reprezentuje zestaw wyników wysuzkiwania Flickr.

[Notatka] Notatka

Implementuje interfejs SeekableIterator dla łatwej iteracji (np., używając foreach), tak samo jak i dla bezpośredniego dostępu do specyficznego wyniku używając metody seek().

29.6.4.1.1. Właściwości

Tabela 29.12. Właściwości Zend_Service_Flickr_ResultSet

Nazwa Typ Opis
totalResultsAvailable int Całkowita ilość dostępnych wyników wyszukiwania
totalResultsReturned int Całkowita ilość zwróconych wyników wyszukiwania
firstResultPosition int Pozycja obecnego zestawu wyników we wszystkich wynikach
29.6.4.1.2. Zend_Service_Flickr_ResultSet::totalResults()

int totalResults();

Zwraca całkowitą ilość wyników w tym zestawie wyników wyszukiwania.

Powrót do listy klas

29.6.4.2. Zend_Service_Flickr_Result

Pojedynczy wynik wyszukiwania zdjęcia w serwisie Flickr

29.6.4.2.1. Właściwości

Tabela 29.13. Właściwości Zend_Service_Flickr_Result

Nazwa Typ Opis
id string ID zdjęcia
owner string Identyfikator NSID właściciela zdjęcia.
secret string Klucz używany w konstrukcji URL.
server string Nazwa serwera używana w konstrukcji URL.
title string Tytuł zdjęcia.
ispublic string Czy zdjęcie jest publiczne.
isfriend string Czy zdjęcie jest dla Ciebie widoczne ponieważ jesteś przyjacielem właściciela.
isfamily string Czy zdjęcie jest dla Ciebie widoczne ponieważ jesteś rodziną właściciela.
license string Licencja pod jaką dostępne jest zdjęcie.
dateupload string Data wgrania zdjęcia.
datetaken string Data zrobienia zdjęcia.
ownername string Wyświetlana nazwa użytkownika.
iconserver string Serwer używany przy dołączaniu adresów URL ikon.
Square Zend_Service_Flickr_Image Miniaturka zdjęcia o wielkości 75x75.
Thumbnail Zend_Service_Flickr_Image Miniaturka zdjęcia o wielkości 100 pikseli.
Small Zend_Service_Flickr_Image Wersja zdjęcia o wielkości 240 pikseli.
Medium Zend_Service_Flickr_Image Wersja zdjęcia o wielkości 500 pikseli.
Large Zend_Service_Flickr_Image Wersja zdjęcia o wielkości 640 pikseli.
Original Zend_Service_Flickr_Image Oryginalne zdjęcie.

Powrót do listy klas

29.6.4.3. Zend_Service_Flickr_Image

Reprezentuje zdjęcie zwrócone przez wyszukiwanie Flickr.

29.6.4.3.1. Właściwości

Tabela 29.14. Właściwości Zend_Service_Flickr_Image

Nazwa Typ Opis
uri string Adres URI oryginalnego zdjęcia
clickUri string Klikalny adres URI (np. strony Flickr) dla zdjęcia
width int Szerokość zdjęcia
height int Wysokość zdjęcia

Powrót do listy klas