Zend_Service_Yahoo
является простым программным интерфейсом
(API) для использования многих программных интерфейсов
портала Yahoo! (Yahoo! REST API). Zend_Service_Yahoo
позволяет искать через Yahoo! Web search, Yahoo! News, Yahoo! Local
и Yahoo! Images. Для того, чтобы использовать Yahoo! REST API, вы
должны иметь ID приложения Yahoo!.
Чтобы получить ID приложения, заполните и отправьте
форму заявки на получение ID приложения.
Zend_Service_Yahoo
дает возможность поиска веб-страниц
через Yahoo! с помощью метода webSearch()
. Этот метод
принимает строку запроса в качестве первого параметра и
массив опций в качестве необязательного второго параметра.
За полной информацией и списком поддерживаемых опций см.
документации
Yahoo! Web Search. Метод webSearch()
возвращает
объект Zend_Service_Yahoo_WebResultSet
.
Пример 35.53. Поиск веб-страниц через Yahoo!
<?php require_once 'Zend/Service/Yahoo.php'; $yahoo = new Zend_Service_Yahoo("YAHOO_APPLICATION_ID"); $results = $yahoo->webSearch('PHP'); foreach ($results as $result) { echo $result->Title .'<br />'; } ?>
Вы можете искать изображения через Yahoo!, используя метод imageSearch()
класса Zend_Service_Yahoo
. Этот метод принимает строку запроса
в качестве первого параметра и
массив опций в качестве необязательного второго параметра.
За полной информацией и списком поддерживаемых опций см.
документацию
Yahoo! Image Search.
Пример 35.54. Поиск изображений через Yahoo!
<?php require_once 'Zend/Service/Yahoo.php'; $yahoo = new Zend_Service_Yahoo("YAHOO_APPLICATION_ID"); $results = $yahoo->imageSearch('PHP'); foreach ($results as $result) { echo $result->Title .'<br />'; } ?>
Вы можете искать торговые и сервисные службы по местонахождению через Yahoo!,
используя метод localSearch()
. За полной информацией
см. документацию Yahoo! Local Search.
Пример 35.55. Поиск торговых и сервисных предприятий по местонахождению через Yahoo!
<?php require_once 'Zend/Service/Yahoo.php'; $yahoo = new Zend_Service_Yahoo("YAHOO_APPLICATION_ID"); $results = $yahoo->localSearch('Apple Computers', array('zip' => '95014')); foreach ($results as $result) { echo $result->Title .'<br />'; } ?>
Поиск новостей через Yahoo! News довольно простой —
используйте метод newsSearch()
, как показано в
следующем примере. За подробностями см. документацию Yahoo! News Search.
Пример 35.56. Поиск через Yahoo! News
<?php require_once 'Zend/Service/Yahoo.php'; $yahoo = new Zend_Service_Yahoo("YAHOO_APPLICATION_ID"); $results = $yahoo->newsSearch('PHP'); foreach ($results as $result) { echo $result->Title .'<br />'; } ?>
Все следующие классы возвращаются различными средствами поиска Yahoo!.
Каждое средство поиска возвращает набор результатов определенного типа,
с которым легко производить итерацию. Каждый отдельный результат поиска
заключен в объекте. Все классы наборов результатов реализуют интерфейс
SeekableIterator
, что позволяет легко производить итерацию и
извлечение определенного результата.
Каждый из классов, реализующих набор результатов поиска, является
наследником базового класса Zend_Service_Yahoo_ResultSet
.
Все наборы результатов поиска возвращают объекты наследников класса Zend_Service_Yahoo_Result.
int totalResults();
Возвращает общее количество результатов поиска.
Таблица 35.15. Свойства класса Zend_Service_Yahoo_ResultSet
Имя | Тип | Описание |
---|---|---|
totalResultsAvailable | int | Общее количество результатов поиска |
totalResultsReturned | int | Количество результатов в данном наборе |
firstResultPosition | int | Позиция первого результата в данном наборе по отношению к общему количеству результатов поиска (смещение) |
Zend_Service_Yahoo_WebResultSet
представляет
набор результатов поиска веб-страниц через Yahoo! Web Search.
Замечание | |
---|---|
|
Zend_Service_Yahoo_ImageResultSet
представляет
набор результатов поиска изображений через Yahoo! Image Search.
Замечание | |
---|---|
|
Zend_Service_Yahoo_ImageResultSet
представляет
набор результатов поиска торговых и сервисных предприятий
через Yahoo! Local Search.
Таблица 35.16. Свойства класса Zend_Service_Yahoo_LocalResultSet
Имя | Тип | Описание |
---|---|---|
resultSetMapURL | string | URL страницы, содержащей карту, на которой отмечены все найденные предприятия. |
Замечание | |
---|---|
|
Zend_Service_Yahoo_ImageResultSet
представляет
набор результатов поиска новостей
через Yahoo! News Search.
Замечание | |
---|---|
|
Каждый из отдельных результатов поиска является объектом класса-наследника от
базового класса Zend_Service_Yahoo_Result
.
Каждый из результатов поиска веб-страниц является объектом
Zend_Service_Yahoo_WebResult
.
Каждый из результатов поиска изображений является объектом
Zend_Service_Yahoo_ImageResult
.
Таблица 35.19. Свойства класса Zend_Service_Yahoo_ImageResult
Имя | Тип | Описание |
---|---|---|
Summary | string | Краткий текст |
RefererUrl | string | URL страницы, содержащей найденное изображение |
FileSize | int | Размер файла изображения в байтах |
FileFormat | string | Формат изображения (bmp, gif, jpeg, png, и т.д.) |
Height | int | Высота изображения |
Width | int | Ширина изображения |
Thumbnail | Zend_Service_Yahoo_Image | Уменьшенная копия изображения |
Каждый из результатов поиска торговых и сервисных предприятий
является объектом Zend_Service_Yahoo_LocalResult
.
Таблица 35.20. Свойства класса Zend_Service_Yahoo_LocalResult
Имя | Тип | Описание |
---|---|---|
Address | string | Адрес организации |
City | string | Город |
State | string | Штат |
Phone | string | Телефон |
Rating | int | Рейтинг |
Distance | float | Расстояние от заданного местонахождения |
MapUrl | string | URL карты |
BusinessUrl | string | URL веб-сайта организации, если есть |
BusinessClickUrl | string | URL для ссылки на веб-сайт организации, если есть |
Каждый отдельный результат News Search возвращается в виде объекта
Zend_Service_Yahoo_NewsResult
.
Таблица 35.21. Свойства класса Zend_Service_Yahoo_NewsResult
Имя | Тип | Описание |
---|---|---|
Summary | string | Краткий текст |
NewsSource | string | Компания, разместившая статью |
NewsSourceUrl | string | URL компании, разместившей статью |
Language | string | Язык, на котором написана статья |
PublishDate | string | Дата размещения новости в формате UNIX |
ModificationDate | string | Дата последнего изменения статьи в формате UNIX |
Thumbnail | Zend_Service_Yahoo_Image | Уменьшенная копия изображения к статье, если есть |