29.6. Zend_Service_Flickr

29.6.1. Introdução às Pesquisas Flickr

Zend_Service_Flickr é uma simples API para usar o Flickr REST Web Service. Para poder usar os Flickr web services, você deve possuir uma API key. Para obter uma chave e maiores informações sobre o Flickr REST Web Service, visite a Flickr API Documentation.

No exemplo seguinte, nós usamos o método tagSearch() para pesquisar por fotos que tenham o valor "php" nas tags.

Exemplo 29.24. Simples pesquisa por fotos 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 />';
}
?>       
[Nota] Nota

tagSearch() aceita um array de opções como segundo parâmetro opcional.

29.6.2. Localizando Usuários Flickr

Zend_Service_Flickr fornece três caminhos variados para obter informações sobre usuários Flickr:

  • userSearch() : Aceita uma string de busca com tags delimitadas por espaços e um array de opções como segundo parâmetro opcional, retornando um objeto Zend_Service_Flickr_ResultSet.

  • getIdByUsername() : Retorna um user ID associado ao nome de usuário informado.

  • getIdByEmail() : Retorna um user ID associado ao endereço de email informado.

Exemplo 29.25. Localizando um usuário Flickr pelo endereço de E-Mail

Neste exemplo, nós temos um endereço de email de um usuário do Flickr, e usamos o método userSearch() para recuperar informações do usuário:

<?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. Recuperando Detalhes de Imagens Flickr Image Details

Zend_Service_Flickr torna fácil e rápida a recuperação de detalhes de imagens baseada em um dado "image ID". Basta usar o método getImageDetails() , como mostrado no exemplo seguinte:

Exemplo 29.26. Recuperando Flickr Image Details

Desde que você conheça o Flickr image ID, recuperar informações sobre a imagem é tarefa simples:

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

$flickr = new Zend_Service_Flickr('MY_API_KEY');

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

echo "Image ID $imageId is $image->width x $image->height pixels.<br />\n";
echo "<a href=\"$image->clickUri\">Click for Image</a>\n";
?>       

29.6.4. Classes Zend_Service_Flickr

As seguintes classes são todas retornadas por tagSearch() e userSearch():

29.6.4.1. Zend_Service_Flickr_ResultSet

Representa um conjunto de resultados de uma pesquisa Flickr.

[Nota] Nota

Implemente o SeekableIterator para facilitar a iteração (ex: usando foreach ), como também o acesso direto a um resultado específico usando seek() .

29.6.4.1.1. Propriedades

Tabela 29.12. Propriedades de Zend_Service_Flickr_ResultSet

Nome Tipo Descrição
totalResultsAvailable int Total de resultados disponível
totalResultsReturned int Total de resultados retornados
firstResultPosition int O deslocamento deste subconjunto de resultados no conjunto de resultados total
29.6.4.1.2. Zend_Service_Flickr_ResultSet::totalResults()

int totalResults();

Retorna o total de resultados deste conjunto de resultados.

Retornar para a Lista de Classes

29.6.4.2. Zend_Service_Flickr_Result

Um simples imagem resultante de uma busca Flickr

29.6.4.2.1. Propriedades

Tabela 29.13. Propriedades de Zend_Service_Flickr_Result

Nome Tipo Descrição
id int ID da imagem
owner int NSID do proprietário da imagem.
secret string Uma chave usada na construção da URL.
server string O nome do servidor usado na construção da URL.
title string O título da foto.
ispublic boolean A foto é pública.
isfriend boolean A foto é visível para você porque você é amigo do proprietário.
isfamily boolean A foto é visível para você porque você é parente do proprietário.
license string Licença sob qual a foto foi publicada.
date_upload string Data em que a foto foi enviada.
date_taken string Data em que a foto foi produzida.
owner_name string O nome de tela do proprietário.
icon_server string O servidor usado na montagem das URLs dos ícones.
Square Zend_Service_Flickr_Image Um slide de 75x75 da imagem.
Thumbnail Zend_Service_Flickr_Image Um slide de 100 pixels da imagem.
Small Zend_Service_Flickr_Image Um slide de 240 pixels da imagem.
Medium Zend_Service_Flickr_Image Um slide de 500 pixels da imagem.
Large Zend_Service_Flickr_Image Um slide de 640 pixels da imagem.
Original Zend_Service_Flickr_Image A imagem original.

Retornar para a Lista de Classes

29.6.4.3. Zend_Service_Flickr_Image

Representa uma imagem retornada por uma busca Flickr.

29.6.4.3.1. Propriedades

Tabela 29.14. Propriedades de Zend_Service_Flickr_Image

Nome Tipo Descrição
uri string URI para a imagem original
clickUri string URI clicável (ex. a página Flickr) para a imagem
width int Largura da imagem
height int Altura da imagem

Retornar para a Lista de Classes