Zend_Service_Flickr
Introduction
Zend_Service_Flickr is a simple API for using the Flickr REST Web Service. In order to use the Flickr web services, you must have an API key. To obtain a key and for more information about the Flickr REST Web Service, please visit the » Flickr API Documentation.
In the following example, we use the tagSearch() method to search for photos having "php" in the tags.
Example #1 Simple Flickr Photo Search
- $flickr = new Zend_Service_Flickr('MY_API_KEY');
- $results = $flickr->tagSearch("php");
- foreach ($results as $result) {
- }
Note: Optional parameter
tagSearch() accepts an optional second parameter as an array of options.
Finding Flickr Users' Photos and Information
Zend_Service_Flickr provides several ways to get information about Flickr users:
-
userSearch(): Accepts a string query of space-delimited tags and an optional second parameter as an array of search options, and returns a set of photos as a Zend_Service_Flickr_ResultSet object.
-
getIdByUsername(): Returns a string user ID associated with the given username string.
-
getIdByEmail(): Returns a string user ID associated with the given email address string.
Example #2 Finding a Flickr User's Public Photos by E-Mail Address
In this example, we have a Flickr user's e-mail address, and we search for the user's public photos by using the userSearch() method:
- $flickr = new Zend_Service_Flickr('MY_API_KEY');
- $results = $flickr->userSearch($userEmail);
- foreach ($results as $result) {
- }
Finding photos From a Group Pool
Zend_Service_Flickr allows to retrieve a group's pool photos based on the group ID. Use the groupPoolGetPhotos() method:
Example #3 Retrieving a Group's Pool Photos by Group ID
- $flickr = new Zend_Service_Flickr('MY_API_KEY');
- $results = $flickr->groupPoolGetPhotos($groupId);
- foreach ($results as $result) {
- }
Note: Optional parameter
groupPoolGetPhotos() accepts an optional second parameter as an array of options.
Retrieving Flickr Image Details
Zend_Service_Flickr makes it quick and easy to get an image's details based on a given image ID. Just use the getImageDetails() method, as in the following example:
Example #4 Retrieving Flickr Image Details
Once you have a Flickr image ID, it is a simple matter to fetch information about the image:
Zend_Service_Flickr Result Classes
The following classes are all returned by tagSearch() and userSearch():
Zend_Service_Flickr_ResultSet
Represents a set of Results from a Flickr search.
Note: Implements the SeekableIterator interface for easy iteration (e.g., using foreach()), as well as direct access to a specific result using seek().
Properties
| Name | Type | Description |
|---|---|---|
| totalResultsAvailable | int | Total Number of Results available |
| totalResultsReturned | int | Total Number of Results returned |
| firstResultPosition | int | The offset in the total result set of this result set |
Zend_Service_Flickr_ResultSet::totalResults()
Returns the total number of results in this result set.
Zend_Service_Flickr_Result
A single Image result from a Flickr query
Properties
| Name | Type | Description |
|---|---|---|
| id | string | Image ID |
| owner | string | The photo owner's NSID. |
| secret | string | A key used in url construction. |
| server | string | The servername to use for URL construction. |
| title | string | The photo's title. |
| ispublic | string | The photo is public. |
| isfriend | string | The photo is visible to you because you are a friend of the owner. |
| isfamily | string | The photo is visible to you because you are family of the owner. |
| license | string | The license the photo is available under. |
| dateupload | string | The date the photo was uploaded. |
| datetaken | string | The date the photo was taken. |
| ownername | string | The screenname of the owner. |
| iconserver | string | The server used in assembling icon URLs. |
| Square | Zend_Service_Flickr_Image | A 75x75 thumbnail of the image. |
| Thumbnail | Zend_Service_Flickr_Image | A 100 pixel thumbnail of the image. |
| Small | Zend_Service_Flickr_Image | A 240 pixel version of the image. |
| Medium | Zend_Service_Flickr_Image | A 500 pixel version of the image. |
| Large | Zend_Service_Flickr_Image | A 640 pixel version of the image. |
| Original | Zend_Service_Flickr_Image | The original image. |
Zend_Service_Flickr_Image
Represents an Image returned by a Flickr search.
Properties
| Name | Type | Description |
|---|---|---|
| uri | string | URI for the original image |
| clickUri | string | Clickable URI (i.e. the Flickr page) for the image |
| width | int | Width of the Image |
| height | int | Height of the Image |