Zend_Service_Flickr.xml 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392
  1. <sect1 id="zend.service.flickr">
  2. <title>Zend_Service_Flickr</title>
  3. <sect2 id="zend.service.flickr.introduction">
  4. <title>Введение</title>
  5. <para>
  6. <code>Zend_Service_Flickr</code> является простым API для
  7. использования веб-вервиса Flickr. Чтобы использовать
  8. веб-вервисы Flickr, вы должны иметь ключ к API. Для того, чтобы
  9. получить ключ и больше информации о сервисе Flickr, обратитесь
  10. к <ulink url="http://www.flickr.com/services/api/">документации по
  11. API веб-вервиса Flickr</ulink>.
  12. </para>
  13. <para>
  14. В следующем примере мы используем метод <code>tagSearch()</code>
  15. для поиска фотографий со словом "php" в тегах.
  16. </para>
  17. <example>
  18. <title>Простой поиск фотографий в Flickr</title>
  19. <programlisting language="php"><![CDATA[<?php
  20. require_once 'Zend/Service/Flickr.php';
  21. $flickr = new Zend_Service_Flickr('MY_API_KEY');
  22. $results = $flickr->tagSearch("php");
  23. foreach ($results as $result) {
  24. echo $result->title . '<br />';
  25. }]]>
  26. </programlisting>
  27. </example>
  28. <note>
  29. <title>Опциональный параметр</title>
  30. <para>
  31. <code>tagSearch()</code> принимает массив опций как второй опциональный параметр.
  32. </para>
  33. </note>
  34. </sect2>
  35. <sect2 id="zend.service.flickr.finding-users">
  36. <title>Поиск фотографий и информации о пользователе Flickr</title>
  37. <para>
  38. <code>Zend_Service_Flickr</code> предоставляет несколько
  39. способов получения информации о пользователях Flickr:
  40. </para>
  41. <itemizedlist>
  42. <listitem>
  43. <para>
  44. <code>userSearch()</code>: Принимает строку запроса,
  45. состоящую из разделенных пробелами тегов, массив опций
  46. поиска как опциональный второй параметр и возвращает
  47. набор фотографий в виде объекта
  48. <code>Zend_Service_Flickr_ResultSet</code>.
  49. </para>
  50. </listitem>
  51. <listitem>
  52. <para>
  53. <code>getIdByUsername()</code>: Возвращает ID
  54. пользователя, связанного с данным именем.
  55. </para>
  56. </listitem>
  57. <listitem>
  58. <para>
  59. <code>getIdByEmail()</code>: Возвращает ID пользователя,
  60. связанного с данным e-mail адресом.
  61. </para>
  62. </listitem>
  63. </itemizedlist>
  64. <example>
  65. <title>Поиск открытых фотографий пользователя по адресу e-mail</title>
  66. <para>
  67. В этом примере мы, имея e-mail пользователя Flickr, ищем его
  68. открытые фотографии, используя метод <code>userSearch()</code>:
  69. </para>
  70. <programlisting language="php"><![CDATA[<?php
  71. require_once 'Zend/Service/Flickr.php';
  72. $flickr = new Zend_Service_Flickr('MY_API_KEY');
  73. $results = $flickr->userSearch($userEmail);
  74. foreach ($results as $result) {
  75. echo $result->title . '<br />';
  76. }]]>
  77. </programlisting>
  78. </example>
  79. </sect2>
  80. <sect2 id="zend.service.flickr.grouppoolgetphotos">
  81. <title>Поиск фотографий из пула группы</title>
  82. <para>
  83. <code>Zend_Service_Flickr</code> позволяет извлекать фотографии из
  84. пула группы (group's pool), используя ID группы. Используйте метод
  85. <code>groupPoolGetPhotos()</code>:
  86. </para>
  87. <example id="zend.service.flickr.grouppoolgetphotos.example-1">
  88. <title>Извлечение фотографий из пула группы через ID группы</title>
  89. <programlisting language="php"><![CDATA[<?php
  90. require_once 'Zend/Service/Flickr.php';
  91. $flickr = new Zend_Service_Flickr('MY_API_KEY');
  92. $results = $flickr->groupPoolGetPhotos($groupId);
  93. foreach ($results as $result) {
  94. echo $result->title . '<br />';
  95. }]]>
  96. </programlisting>
  97. </example>
  98. <note>
  99. <title>Опциональный параметр</title>
  100. <para>
  101. <code>groupPoolGetPhotos()</code> принимает массив опций как опциональный второй параметр.
  102. </para>
  103. </note>
  104. </sect2>
  105. <sect2 id="zend.service.flickr.getimagedetails">
  106. <title>Извлечение данных по изображению в Flickr</title>
  107. <para>
  108. <code>Zend_Service_Flickr</code> делает быстрым и легким получение
  109. данных по изображению через его ID. Просто используйте метод
  110. <code>getImageDetails()</code>, как показано в следующем примере:
  111. </para>
  112. <example>
  113. <title>Получение данных по изображению в Flickr</title>
  114. <para>
  115. Имея ID изображения, легко извлечь информацию об этом
  116. изображении:
  117. </para>
  118. <programlisting language="php"><![CDATA[<?php
  119. require_once 'Zend/Service/Flickr.php';
  120. $flickr = new Zend_Service_Flickr('MY_API_KEY');
  121. $image = $flickr->getImageDetails($imageId);
  122. echo "Image ID $imageId is $image->width x $image->height pixels.<br />\n";
  123. echo "<a href=\"$image->clickUri\">Click for Image</a>\n";]]>
  124. </programlisting>
  125. </example>
  126. </sect2>
  127. <sect2 id="zend.service.flickr.classes">
  128. <title>Классы результатов Zend_Service_Flickr</title>
  129. <para>
  130. Объекты следующих классов возвращаются методами
  131. <code>tagSearch()</code> и <code>userSearch()</code>:
  132. <itemizedlist>
  133. <listitem>
  134. <para>
  135. <link linkend="zend.service.flickr.classes.resultset"><code>Zend_Service_Flickr_ResultSet</code></link>
  136. </para>
  137. </listitem>
  138. <listitem>
  139. <para>
  140. <link linkend="zend.service.flickr.classes.result"><code>Zend_Service_Flickr_Result</code></link>
  141. </para>
  142. </listitem>
  143. <listitem>
  144. <para>
  145. <link linkend="zend.service.flickr.classes.image"><code>Zend_Service_Flickr_Image</code></link>
  146. </para>
  147. </listitem>
  148. </itemizedlist>
  149. </para>
  150. <sect3 id="zend.service.flickr.classes.resultset">
  151. <title>Zend_Service_Flickr_ResultSet</title>
  152. <para>Представляет набор результатов поиска, возвращенных Flickr</para>
  153. <note>
  154. <para>
  155. Реализует интерфейс <code>SeekableIterator</code> для легкой
  156. итерации (например, с использованием <code>foreach</code>) и
  157. прямого доступа с помощью метода <code>seek()</code>.
  158. </para>
  159. </note>
  160. <sect4 id="zend.service.flickr.classes.resultset.properties">
  161. <title>Свойства класса</title>
  162. <table>
  163. <title>Свойства класса Zend_Service_Flickr_ResultSet</title>
  164. <tgroup cols="3">
  165. <thead>
  166. <row>
  167. <entry>Имя</entry>
  168. <entry>Тип</entry>
  169. <entry>Описание</entry>
  170. </row>
  171. </thead>
  172. <tbody>
  173. <row>
  174. <entry>totalResultsAvailable</entry>
  175. <entry>int</entry>
  176. <entry>Общее количество доступных результатов</entry>
  177. </row>
  178. <row>
  179. <entry>totalResultsReturned</entry>
  180. <entry>int</entry>
  181. <entry>Общее количество возвращенных результатов</entry>
  182. </row>
  183. <row>
  184. <entry>firstResultPosition</entry>
  185. <entry>int</entry>
  186. <entry>Смещение для данного набора в общем наборе результатов</entry>
  187. </row>
  188. </tbody>
  189. </tgroup>
  190. </table>
  191. </sect4>
  192. <sect4 id="zend.service.flickr.classes.resultset.totalResults">
  193. <title>Zend_Service_Flickr_ResultSet::totalResults()</title>
  194. <para>
  195. <methodsynopsis>
  196. <type>int</type>
  197. <methodname>totalResults</methodname>
  198. <void />
  199. </methodsynopsis>
  200. </para>
  201. <para>
  202. Возвращает общее количество результатов в наборе.
  203. </para>
  204. <para>
  205. <link linkend="zend.service.flickr.classes">Назад к списку классов</link>
  206. </para>
  207. </sect4>
  208. </sect3>
  209. <sect3 id="zend.service.flickr.classes.result">
  210. <title>Zend_Service_Flickr_Result</title>
  211. <para>
  212. Отдельный результат запроса к Flickr.
  213. </para>
  214. <sect4 id="zend.service.flickr.classes.result.properties">
  215. <title>Свойства класса</title>
  216. <table>
  217. <title>Свойства класса Zend_Service_Flickr_Result</title>
  218. <tgroup cols="3">
  219. <thead>
  220. <row>
  221. <entry>Имя</entry>
  222. <entry>Тип</entry>
  223. <entry>Описание</entry>
  224. </row>
  225. </thead>
  226. <tbody>
  227. <row>
  228. <entry>id</entry>
  229. <entry>string</entry>
  230. <entry>ID изображения</entry>
  231. </row>
  232. <row>
  233. <entry>owner</entry>
  234. <entry>string</entry>
  235. <entry>NSID владельца фотографии</entry>
  236. </row>
  237. <row>
  238. <entry>secret</entry>
  239. <entry>string</entry>
  240. <entry>Ключ, используемый при построении URL</entry>
  241. </row>
  242. <row>
  243. <entry>server</entry>
  244. <entry>string</entry>
  245. <entry>Имя сервера, используемое при построении URL</entry>
  246. </row>
  247. <row>
  248. <entry>title</entry>
  249. <entry>string</entry>
  250. <entry>Подпись к фотографии</entry>
  251. </row>
  252. <row>
  253. <entry>ispublic</entry>
  254. <entry>string</entry>
  255. <entry>Является ли фотография общедоступной</entry>
  256. </row>
  257. <row>
  258. <entry>isfriend</entry>
  259. <entry>string</entry>
  260. <entry>Фотография доступна потому, что вы являетесь другом владельца.</entry>
  261. </row>
  262. <row>
  263. <entry>isfamily</entry>
  264. <entry>string</entry>
  265. <entry>Фотография доступна потому, что вы являетесь членом семьи владельца.<!--The photo is visible to you because you are family of the owner.--></entry>
  266. </row>
  267. <row>
  268. <entry>license</entry>
  269. <entry>string</entry>
  270. <entry>Лицензия, по которой доступна фотография</entry>
  271. </row>
  272. <row>
  273. <entry>dateupload</entry>
  274. <entry>string</entry>
  275. <entry>Дата загрузки фотографии</entry>
  276. </row>
  277. <row>
  278. <entry>datetaken</entry>
  279. <entry>string</entry>
  280. <entry>Дата получения фотографии</entry>
  281. </row>
  282. <row>
  283. <entry>ownername</entry>
  284. <entry>string</entry>
  285. <entry>Ник пользователя</entry>
  286. </row>
  287. <row>
  288. <entry>iconserver</entry>
  289. <entry>string</entry>
  290. <entry>Сервер, используемый в URL иконок</entry>
  291. </row>
  292. <row>
  293. <entry>Square</entry>
  294. <entry><link linkend="zend.service.flickr.classes.image">Zend_Service_Flickr_Image</link></entry>
  295. <entry>Уменьшенная копия изображения 75x75</entry>
  296. </row>
  297. <row>
  298. <entry>Thumbnail</entry>
  299. <entry><link linkend="zend.service.flickr.classes.image">Zend_Service_Flickr_Image</link></entry>
  300. <entry>Уменьшенная копия изображения 100x100</entry>
  301. </row>
  302. <row>
  303. <entry>Small</entry>
  304. <entry><link linkend="zend.service.flickr.classes.image">Zend_Service_Flickr_Image</link></entry>
  305. <entry>Уменьшенная копия изображения 240x240</entry>
  306. </row>
  307. <row>
  308. <entry>Medium</entry>
  309. <entry><link linkend="zend.service.flickr.classes.image">Zend_Service_Flickr_Image</link></entry>
  310. <entry>Уменьшенная копия изображения 500x500</entry>
  311. </row>
  312. <row>
  313. <entry>Large</entry>
  314. <entry><link linkend="zend.service.flickr.classes.image">Zend_Service_Flickr_Image</link></entry>
  315. <entry>Уменьшенная копия изображения 640x640</entry>
  316. </row>
  317. <row>
  318. <entry>Original</entry>
  319. <entry><link linkend="zend.service.flickr.classes.image">Zend_Service_Flickr_Image</link></entry>
  320. <entry>Оригинал изображения</entry>
  321. </row>
  322. </tbody>
  323. </tgroup>
  324. </table>
  325. <para>
  326. <link linkend="zend.service.flickr.classes">Назад к списку классов</link>
  327. </para>
  328. </sect4>
  329. </sect3>
  330. <sect3 id="zend.service.flickr.classes.image">
  331. <title>Zend_Service_Flickr_Image</title>
  332. <para>
  333. Представляет изображение, возвращенное в результате поиска.
  334. </para>
  335. <sect4 id="zend.service.flickr.classes.image.properties">
  336. <title>Свойства класса</title>
  337. <table>
  338. <title>Свойства класса Zend_Service_Flickr_Image</title>
  339. <tgroup cols="3">
  340. <thead>
  341. <row>
  342. <entry>Имя</entry>
  343. <entry>Тип</entry>
  344. <entry>Описание</entry>
  345. </row>
  346. </thead>
  347. <tbody>
  348. <row>
  349. <entry>uri</entry>
  350. <entry>string</entry>
  351. <entry>URI для оригинального изображения</entry>
  352. </row>
  353. <row>
  354. <entry>clickUri</entry>
  355. <entry>string</entry>
  356. <entry>Ссылка для изображения (страница Flickr)</entry>
  357. </row>
  358. <row>
  359. <entry>width</entry>
  360. <entry>int</entry>
  361. <entry>Ширина изображения</entry>
  362. </row>
  363. <row>
  364. <entry>height</entry>
  365. <entry>int</entry>
  366. <entry>Высота изображения</entry>
  367. </row>
  368. </tbody>
  369. </tgroup>
  370. </table>
  371. <para>
  372. <link linkend="zend.service.flickr.classes">Назад к списку классов</link>
  373. </para>
  374. </sect4>
  375. </sect3>
  376. </sect2>
  377. </sect1>
  378. <!--
  379. vim:se ts=4 sw=4 et:
  380. -->