flickr
API Flickr, une autre façon de gerer ses photos.
Flickr qu'est-ce ?
Flickr est un site communautaire de photographies récemment racheté par Yahoo. Il permet de stocker et présenter ses photos sans trop de souci.
De nombreux outils permettent d'uploader ses photos rapidement et facilement (par ici).
Flickr met à disposition une API permettant d'utiliser flickr depuis son site web. La documentation de cette API se trouve ici.
Pré requis :
Pour stocker ses photos sur Flickr, un compte Flickr ou Yahoo est indispensable (un compte Yahoo.fr faisant aussi l'affaire). Pour utiliser l'API, il est nécessaire de récupérer une clef d'API en allant sur http://flickr.com/services/api/key.gne. Une fois cette clef obtenue, il suffit d'aller sur http://www.flickr.com/services/api/registered_keys.gne et d'obtenir l'API_secret en cliquant sur "Edit configuration". C'est sur ce même panneau qu'il faut déclarer l'URL de call-back nécessaire à toute authentification.
La classe Flickr :
Flickr propose plus de 70 méthodes, la classe Flickr en implémente quelques-unes. Chaque méthode de cette classe retourne une chaîne XML.
Les classes User, Album et Photo :
Celles-ci stockent les propriétés respectives des users, albums et photos. Avec de nombreuses méthodes ces classes procurent une bonne base d'outils pour la création d'un album photo.
Ces classes fonctionnent indifféremment en PHP4 et PHP5.
Exemple d'utilisation minimale
Les Méthodes
- User:: User - User - Nouvelle instance.
- User::getId - User - Récupérer l'Id de l'utilisateur.
- User::getName - User - Récupérer le pseudo de l'utilisateur.
- User::getRealName - User - Récupérer le nom réel de l'utilisateur.
- User::getLocation - User - Récupérer la localisation de l'utilisateur.
- User::getImgBuddyIcon - User - Récupérer l'avatar de l'utilisateur.
- User::getProfilUrl - User - Récupérer l'url Flickr du profil de l'utilisateur.
- User::getPhotosUrl - User - Récupérer l'url Flickr des photos de l'utilisateur.
- User::getPhotosCount - User - Récupérer le nombre de photos de l'utilisateur.
- User::getAlbumsCount - User - Récupérer le nombre d'albums de l'utilisateur.
- User::getAlbumsList - User - Récupérer la liste des albums de l'utilisateur.
- Album:: Album - Album - Nouvelle instance.
- Album::getId - Album - Récupérer l'Id d'un album.
- Album::getTitle - Album - Récupérer le titre d'un album.
- Album::getDescription - Album - Récupérer la description d'un album.
- Album::getPhotosCount - Album - Récupérer le nombre de photos dans un album.
- Album::getOwnerName - Album - Récupérer le pseudo du propriétaire d'un album.
- Album::getOwnerRealName - Album - Récupérer le nom réel du propriétaire d'un album.
- Album::getOwnerLocation - Album - Récupérer la localisation du propriétaire d'un album.
- Album::getOwnerBuddyIcon - Album - Récupérer l'avatar du propriétaire d'un album.
- Album::getOwnerOtherAlbums - Album - Récupérer la liste des autres albums du propriétaire d'un album.
- Album::getPhotos - Album - Récupérer la liste des photos d'un album.
- Photo:: Photo - Photo - Nouvelle instance.
- Photo::getId - Photo - Récupérer l'Id d'une photo.
- Photo::getSecret - Photo - Récupérer le code d'une photo.
- Photo::getTitle - Photo - Récupérer le titre d'une photo.
- Photo::getDescription - Photo - Récupérer la description d'une photo.
- Photo::getOwnerName - Photo - Récupérer le pseudo du propriétaire d'une photo.
- Photo::getOwnerRealName - Photo - Récupérer le nom réel du propriétaire d'une photo.
- Photo::getOwnerLocation - Photo - Récupérer la localisation du propriétaire d'une photo.
- Photo::getTakenDate - Photo - Récupérer la date de prise d'une photo.
- Photo::getTakenHour - Photo - Récupérer l'heure de prise d'une photo.
- Photo::getExif Infos - Photo - Récupérer les infos Exif d'une photo.
- Photo::getTags - Photo - Récupérer les mots clés associés à une photo.
- Photo::getNextPhotoId - Photo - Récupérer l'Id de la photo suivante d'une photo.
- Photo::getNextPhotoSecret - Photo - Récupérer le code de la photo suivante d'une photo.
- Photo::getNextPhotoTitle - Photo - Récupérer le titre de la photo suivante d'une photo.
- Photo::getNextPhotoImg - Photo - Récupérer l'image thumb de la photo suivante d'une photo.
- Photo::getPreviousPhotoId - Photo - Récupérer l'Id de la photo précédente d'une photo.
- Photo::getPreviousPhotoSecret - Photo - Récupérer le code de la photo précédente d'une photo.
- Photo::getPreviousPhotoTitle - Photo - Récupérer le titre de la photo précédente d'une photo.
- Photo::getPreviousPhotoImg - Photo - Récupérer l'image thumb de la photo précédente d'une photo.
- Album::getImgLarge - Photo - Récupérer la photo grand format.
- Album::getImgMedium - Photo - Récupérer la photo format moyen.
- Album::getImgSmall - Photo - Récupérer la photo petit format.
- Album::getImgThumb - Photo - Récupérer la photo format Thumb.
- Album::getImgSquare - Photo - Récupérer la photo format vignette.
- Flickr::Flickr - Flickr - Nouvelle instance.
- Flickr::peoplegetPublicPhotos - Flickr - People : Récupérer les photos publiques d'un user.
- Flickr::peoplegetInfos - Flickr - People : Récupérer les infos d'un user
- Flickr::photosgetRecent - Flickr - Photos : Récupérer les photos récentes.
- Flickr::photosgetInfo - Flickr - Photos : Récupérer les informations générales d'une photo.
- Flickr::photosgetExif - Flickr - Photos : Récupérer les informations Exif d'une photo.
- Flickr::photosetsgetList - Flickr - Photoset : Récupérer les albums d'un user
- Flickr::photosetsgetInfo - Flickr - Photoset : Récupérer les informations d'un album.
- Flickr::photosetsgetPhotos - Flickr - Photoset : Récupérer les photos d'un album.
- Flickr::photosetsgetContext - Flickr - Photoset : Récupérer les photos précédentes et suivantes.
- Flickr:: getAuthUrl - Flickr - Auth : Récupérer une Url d'authentification.
- Flickr:: getFrobToken - Flickr - Auth : Récupérer un code d'authentification.
Exemples
- Exemple : Informations sur un user.
- Exemple : Afficher les photos d'un album.
- Exemple : Afficher une photo.
Description des Méthodes
User - Nouvelle instance.
User:: User( Flickr Flickr , string userId )
Nouvelle Instance de la classe User.
- flickr : Instance de Flickr.
- userId : Id de l'utilisateur.
$user = new User( $flickr , '19336866@N00' )
User - Récupérer l'Id de l'utilisateur.
User::getId()
Retourne l'Id de l'utilisateur.
$user -> getId()
User - Récupérer le pseudo de l'utilisateur.
User::getName()
Retourne le pseudo de l'utilisateur.
$user -> getName()
User - Récupérer le nom réel de l'utilisateur.
User::getRealName()
Retourne le nom réel de l'utilisateur.
$user -> getRealName()
User - Récupérer la localisation de l'utilisateur.
User::getLocation()
Retourne la localisation de l'utilisateur.
$user -> getLocation()
User - Récupérer l'avatar de l'utilisateur.
User::getImgBuddyIcon()
Retourne l'image de l'avatar de l'utilisateur (sous forme <img src= ... />).
$user -> getImgBuddyIcon()
User - Récupérer l'url Flickr du profil de l'utilisateur.
User::getProfilUrl()
Retourne l'url.
$user -> getProfilUrl()
User - Récupérer l'url Flickr des photos de l'utilisateur.
User::getPhotosUrl()
Retourne l'url.
$user -> getPhotosUrl()
User - Récupérer le nombre de photos de l'utilisateur.
User::getPhotosCount()
Retourne le nombre de photos.
$user -> getPhotosCount()
User - Récupérer le nombre d'albums de l'utilisateur.
User::getAlbumsCount()
Retourne le nombre d'albums.
$user -> getAlbumsCount()
User - Récupérer la liste des albums de l'utilisateur.
User::getAlbumsList()
Retourne un tableau contenant les différents albums.
$user -> getAlbumsList()
Album - Nouvelle instance.
Album:: Album( Flickr Flickr, string setId , string userId )
Nouvelle Instance de la classe Album.
- flickr : Instance de Flickr.
- albumId : Id de l'album ou ALL pour toutes les photos de l'utilisateur ou RECENT pour les photos récemment uploadées (tout utilisateur confondu).
- userId : Id du utilisateur.
$album = new Album( $flickr , '1183438' , '19336866@N00' )$album = new Album( $flickr , 'ALL' , '19336866@N00' )$album = new Album( $flickr , 'RECENT' , '19336866@N00' )
Album - Récupérer l'Id d'un album.
Album::getId()
Retourne l'Id de l'album.
$album -> getId()
Album - Récupérer le titre d'un album.
Album::getTitle()
Retourne le titre de l'album.
$album -> getTitle()
Album - Récupérer la description d'un album.
Album::getDescription()
Retourne la description de l'albumr.
$album -> getDescription()
Album - Récupérer le nombre de photos dans un album.
Album::getPhotosCount()
Retourne le nombre de photos dans l'album.
$album -> getPhotosCount()
Album - Récupérer le pseudo du propriétaire d'un album.
Album::getOwnerName()
Retourne le pseudo du propriétaire de l'album.
$album -> getOwnerName()
Album - Récupérer le nom réel du propriétaire d'un album.
Album::getOwnerRealName()
Retourne le nom réel du propriétaire de l'album.
$album -> getOwnerRealName()
Album - Récupérer la localisation du propriétaire d'un album.
Album::getOwnerLocation()
Retourne la localisation du propriétaire de l'album.
$album -> getOwnerLocation()
Album - Récupérer l'avatar du propriétaire d'un album.
Album::getOwnerBuddyIcon()
Retourne l'image de l'avatar du propriétaire de l'album (sous forme <img src= ... />).
$album -> getOwnerBuddyIcon()
Album - Récupérer la liste des autres albums du propriétaire d'un album.
Album::getOwnerOtherAlbums()
Retourne un tableau contenant la liste des autres albums du propriétaire de l'album.
$album -> getOwnerOtherAlbums()
Album - Récupérer la liste des photos d'un album.
Album::getPhotos()
Retourne un tableau contenant la liste des photos de l'album.
$album -> getPhotos()
Photo - Nouvelle instance.
Photo:: Photo( Flickr Flickr, string photoId [, string setId] )
Nouvelle Instance de la classe Photo.
- flickr : Instance de Flickr.
- photId : Id de la photo.
- albumId : Id de l'album.
Photo = new Photo( $flickr , '52662603' )Photo = new Photo( $flickr , '52662603' , '1183438' )
Photo - Récupérer l'Id d'une photo.
Photo::getId()
Retourne l'Id de la photo.
$photo -> getId()
Photo - Récupérer le code d'une photo.
Photo::getSecret()
Retourne le "secret" de la photo.
$photo -> getSecret()
Photo - Récupérer le titre d'une photo.
Photo::getTitle()
Retourne le titre de la photo.
$photo -> getTitle()
Photo - Récupérer la description d'une photo.
Photo::getDescription()
Retourne la description de la photo.
$photo -> getDescription()
Photo - Récupérer le pseudo du propriétaire d'une photo.
Photo::getOwnerName()
Retourne le pseudo du propriétaire de la photo.
$photo -> getOwnerName()
Photo - Récupérer le nom réel du propriétaire d'une photo.
Photo::getOwnerRealName()
Retourne le nom réel du propriétaire de la photo.
$photo -> getOwnerRealName()
Photo - Récupérer la localisation du propriétaire d'une photo.
Photo::getOwnerLocation()
Retourne la localisation du propriétaire de la photo.
$photo -> getOwnerLocation()
Photo - Récupérer la date de prise d'une photo.
Photo::getTakenDate()
Retourne la date de prise de la photo (format dd-mm-yyyy).
$photo -> getTakenDate()
Photo - Récupérer l'heure de prise d'une photo.
Photo::getTakenHour()
Retourne l'heure de la photo (format hh:mm:ss).
$photo -> getTakenHour()
Photo - Récupérer les infos Exif d'une photo.
Photo::getExif Infos()
Retourne un tableau des infos exif (eXchangeable Image File Format) de la photo si existantes.
$photo -> getExifInfos()
Photo - Récupérer les mots clés associés à une photo.
Photo::getTags()
Retourne un tableau des mots clés associés à la photo si existants.
$photo -> getTags()
Photo - Récupérer l'Id de la photo suivante d'une photo.
Photo::getNextPhotoId()
Retourne l'Id de la photo suivante dans l'album si existante.
$photo -> getNextPhotoId()
Photo - Récupérer le code de la photo suivante d'une photo.
Photo::getNextPhotoSecret()
Retourne l'Id de la photo suivante dans l'album si existante.
$photo -> getNextPhotoSecret()
Photo - Récupérer le titre de la photo suivante d'une photo.
Photo::getNextPhotoTitle()
Retourne le titre de la photo suivante dans l'album si existante.
$photo -> getNextPhotoTitle()
Photo - Récupérer l'image thumb de la photo suivante d'une photo.
Photo::getNextPhotoImg()
Retourne l'image thumb de la photo suivante dans l'album si existante (sous forme <img src= ... />).
$photo -> getNextPhotoImg()
Photo - Récupérer l'Id de la photo précédente d'une photo.
Photo::getPreviousPhotoId()
Retourne l'Id de la photo précédente dans l'album si existante.
$photo -> getPreviousPhotoId()
Photo - Récupérer le code de la photo précédente d'une photo.
Photo::getPreviousPhotoSecret()
Retourne l'Id de la photo précédente dans l'album si existante.
$photo -> getPreviousPhotoSecret()
Photo - Récupérer le titre de la photo précédente d'une photo.
Photo::getPreviousPhotoTitle()
Retourne le titre de la photo précédente dans l'album si existante.
$photo -> getPreviousPhotoTitle()
Photo - Récupérer l'image thumb de la photo précédente d'une photo.
Photo::getPreviousPhotoImg()
Retourne l'image thumb de la photo précédente dans l'album si existante (sous forme <img src= ... />).
$photo -> getPreviousPhotoImg()
Photo - Récupérer la photo grand format.
Album::getImgLarge()
Retourne la photo grand format 1024 sur grand coté si possible (sous forme <img src= ... />).
$album -> getImgLarge()
Photo - Récupérer la photo format moyen.
Album::getImgMedium()
Retourne la photo format moyen 500 sur grand coté (sous forme <img src= ... />).
$album -> getImgMedium()
Photo - Récupérer la photo petit format.
Album::getImgSmall()
Retourne la photo format moyen 240 sur grand coté (sous forme <img src= ... />).
$album -> getImgSmall()
Photo - Récupérer la photo format Thumb.
Album::getImgThumb()
Retourne la photo format moyen 100 sur grand coté (sous forme <img src= ... />).
$album -> getImgThumb()
Photo - Récupérer la photo format vignette.
Album::getImgSquare()
Retourne la vignette de la photo format 75x75 (sous forme <img src= ... />).
$album -> getImgSquare()
Flickr - Nouvelle instance.
Flickr::Flickr( string apiKey, string apiSecret )
Nouvelle Instance de la classe Flickr.
- apiKey : Clé de l'API
- apiSecret : Code de l'API
$flickr = new Flickr($apiKey, $apiSecret)
Flickr - People : Récupérer les photos publiques d'un user.
Flickr::peoplegetPublicPhotos( string userId [, int per_page [, int page [, string extras ]]] )
Retourne la liste de toutes les photos d'un user.
- userId : Id de l'utilisateur
- per_page : Nombre de résultats par page (par défaut 100, maxi 500)
- page : La page à récupérer (par défaut la première)
- extras : Liste d'infos supplémentaire à récupérer.
$flickr -> peoplegetPublicPhotos( '19336866@N00' );$flickr -> peoplegetPublicPhotos( '19336866@N00' , 10);$flickr -> peoplegetPublicPhotos( '19336866@N00' , 10 , 3);$flickr -> peoplegetPublicPhotos( '19336866@N00' , 10 , 3, 'license, owner_name');
Flickr - People : Récupérer les infos d'un user
Flickr::peoplegetInfos( string userId )
Retourne les informations liées à un user
- userId : Id de l'utilisateur
$flickr -> peoplegetInfos( '19336866@N00' );
Flickr - Photos : Récupérer les photos récentes.
Flickr::photosgetRecent( [ int per_page [, int page [, string extras ]]] )
Retourne la liste des photos récement uploadé sur flickr (tous users confondus)
- per_page : Nombre de résultats par page (par défaut 100, maxi 500)
- page : La page à récupérer (par défaut la première)
- extras : Liste d'infos supplémentaire à récupérer.
$flickr -> photosgetRecent( 10 );$flickr -> photosgetRecent( 10 , 3 );$flickr -> photosgetRecent( 10 , 3 , 'license, owner_name' );
Flickr - Photos : Récupérer les informations générales d'une photo.
Flickr::photosgetInfo( string photoId, [string secret] )
Retourne les informations liées à une photo.
- photoId : Id de la photo
- secret : Code de la photo
$flickr -> photosgetInfo( '52662603' );$flickr -> photosgetInfo( '52662603' , '80cac31fdc' );
Flickr - Photos : Récupérer les informations Exif d'une photo.
Flickr::photosgetExif( string photoId, [string secret] )
Retourne les informations liées à une photo (si présentes).
- photoId : Id de la photo
- secret : Code de la photo
$flickr -> photosgetExif( '52662603' );$flickr -> photosgetExif( '52662603' , '80cac31fdc' );
Flickr - Photoset : Récupérer les albums d'un user
Flickr::photosetsgetList( string userId )
Retourne la liste des albums (photosets) d'un user.
- userId : Id de l'utilisateur
$flickr -> photosetsgetList( '19336866@N00' );
Flickr - Photoset : Récupérer les informations d'un album.
Flickr::photosetsgetInfo( string setId )
Retourne les informations liées à un album.
- setId : Id de l'album
$flickr -> photosetsgetInfo( '1183438' );
Flickr - Photoset : Récupérer les photos d'un album.
Flickr::photosetsgetPhotos( string setId )
Retourne la liste des photos d'un album.
- setId : Id de l'album
$flickr -> photosetsgetPhotos( '1183438' );
Flickr - Photoset : Récupérer les photos précédentes et suivantes.
Flickr::photosetsgetContext( string photoId, string setId )
Retourne les photos précédentes et suivantes d'une photo donnée à l'interieur d'un album.
- photoId : Id de la photo
- setId : Id de l'album
$flickr -> photosetsgetContext( '52662603' , '1183438' );
Flickr - Auth : Récupérer une Url d'authentification.
Flickr:: getAuthUrl( string perm )
Retourne une URL permettant d'obtenir une autorisation sur Flickr. L'appel à cette URL dirrige sur le panneau de "Sign in" Flickr puis sur l'URL de callback en envoyant le "FROB" en GET.
- perm : Permission demandée : read, write ou delete.
$flickr -> getAuthUrl( 'write' );
Flickr - Auth : Récupérer un code d'authentification.
Flickr:: getFrobToken( string frob )
Retourne un code d'autentification (auth-token) à partir d'un frob.
- frob : Code frob récupéré grace à l'URL d'authentification.
$flickr -> getFrobToken( '346608-6784cfab1b8dca79' );