38.6. Zend_Service_Flickr
38.6.1. 对Flickr搜索的介绍
Zend_Service_Flickr
i是一组用来使用Flickr REST Web Service 的简单API.
为了可以使用Flickr web services, 你必须拥有 API key. 获取key或需要Flickr REST Web Service更多详细信息, 请访问
Flickr API Documentation.
在下面的例子中, 我们使用 tagSearch()
方法来搜索tag中有 "PHP"的照片
.
例 38.27. 简单的 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 />'; } ?>
注意 | |
---|---|
|
38.6.2. 查找 Flickr 用户
Zend_Service_Flickr
提供三种不同的方法来得到 Flickr的用户信息:
userSearch()
: 接受一个以空格来作为分隔符的(由tag构成)查询字符串,用数组的方式(可选)来指定搜索选项, 返回一个Zend_Service_Flickr_ResultSet
对象.getIdByUsername()
: 以字符串的格式返回与给定用户名关联的用户 IDgetIdByEmail()
: 以字符串的格式返回与给定email地址关联的用户 ID
例 38.28. 用email地址来查找Flickr用户
在这个例子中, 我们有一个Flickr用户的e-mail 地址, 并用
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 />'; } ?>
38.6.3. 获得 Flickr 图像详细资料
Zend_Service_Flickr
使我们可以使用给定的图像id来非常方便快捷的得到图像的详细信息,使用getImageDetails()
方法, 如下面的例子:
例 38.29. 获得 Flickr 图像详细资料
一旦你有一个Flickr 图像的ID,获得它的详细信息将是小事一桩:
<?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"; ?>
38.6.4. Zend_Service_Flickr 类
下面列出的是将由tagSearch()
和 userSearch()
返回的一些类:
Zend_Service_Flickr_ResultSet
Zend_Service_Flickr_Result
Zend_Service_Flickr_Image
38.6.4.1. Zend_Service_Flickr_ResultSet
代表一个Flickr search的结果集.
注意 | |
---|---|
该对象实现了
|
38.6.4.1.1. 属性
表 38.12. Zend_Service_Flickr_ResultSet 属性
名称 | 类别 | 描述 |
---|---|---|
totalResultsAvailable | int | 所有有效结果的数量 |
totalResultsReturned | int | 所有结果的数量 |
firstResultPosition | int | 当前结果集在所有结果集中的偏移 |
38.6.4.1.2. Zend_Service_Flickr_ResultSet::totalResults()
int totalResults();
返回这个结果集中所有结果的数量
Back to Class List
38.6.4.2. Zend_Service_Flickr_Result
Flickr query中的一个单一图片结果
38.6.4.2.1. 属性
表 38.13. Zend_Service_Flickr_Result 属性
名称 | 类别 | 描述 |
---|---|---|
id | int | 图片 ID |
owner | int | 相片所有者的 NSID. |
secret | string | 一个用于构建url的key |
server | string | 用于构建url的服务器名称 |
title | string | 相片的title |
ispublic | boolean | 相片是否是公开的 |
isfriend | boolean | 因为你是相片所有者的朋友,相片对你可见 |
isfamily | boolean | 因为你是相片所有者的亲属,相片对你可见 |
license | string | 相片基于什么license |
date_upload | string | 上传相片的时间 |
date_taken | string | 拍照的时间 |
owner_name | string | 相片所有者的名字 |
icon_server | string | 用来装配图标 URLs的服务器 |
Square | Zend_Service_Flickr_Image | 一个 75x75像素大小的预览图 |
Thumbnail | Zend_Service_Flickr_Image | 一个100像素大小的预览图 |
Small | Zend_Service_Flickr_Image | 一个240像素大小的图片 |
Medium | Zend_Service_Flickr_Image | 一个500像素大小的图片 |
Large | Zend_Service_Flickr_Image | 一个640像素大小的图片 |
Original | Zend_Service_Flickr_Image | 原始图片 |
Back to Class List
38.6.4.3. Zend_Service_Flickr_Image
代表由Flickr搜索返回的图片
38.6.4.3.1. 属性
表 38.14. Zend_Service_Flickr_Image 属性
名称 | 类别 | 描述 |
---|---|---|
uri | string | 原始图片的URI |
clickUri | string | 图片相关的可点击的URI (如 Flickr 的页面) |
width | int | 图片的宽度 |
height | int | 图片的高度 |
Back to Class List