29.8. Zend_Service_Yahoo

29.8.1. Введение

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 приложения.

29.8.2. Поиск веб-страниц с помощью Yahoo!

Zend_Service_Yahoo дает возможность поиска веб-страниц через Yahoo! с помощью метода webSearch(). Этот метод принимает строку запроса в качестве первого параметра и массив опций в качестве необязательного второго параметра. За полной информацией и списком поддерживаемых опций см. документации Yahoo! Web Search. Метод webSearch() возвращает объект Zend_Service_Yahoo_WebResultSet.

Пример 29.32. Поиск веб-страниц через 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 />';
}
?>       

29.8.3. Поиск изображений через Yahoo!

Вы можете искать изображения через Yahoo!, используя метод imageSearch() класса Zend_Service_Yahoo. Этот метод принимает строку запроса в качестве первого параметра и массив опций в качестве необязательного второго параметра. За полной информацией и списком поддерживаемых опций см. документацию Yahoo! Image Search.

Пример 29.33. Поиск изображений через 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 />';
}
?>       

29.8.4. Поиск торговых и сервисных предприятий по местонахождению через Yahoo!

Вы можете искать торговые и сервисные службы по местонахождению через Yahoo!, используя метод localSearch(). За полной информацией см. документацию Yahoo! Local Search.

Пример 29.34. Поиск торговых и сервисных предприятий по местонахождению через 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 />';
}
?>       

29.8.5. Поиск через Yahoo! News

Поиск новостей через Yahoo! News довольно простой — используйте метод newsSearch(), как показано в следующем примере. За подробностями см. документацию Yahoo! News Search.

Пример 29.35. Поиск через 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 />';
}
?>       

29.8.6. Классы Zend_Service_Yahoo

Все следующие классы возвращаются различными средствами поиска Yahoo!. Каждое средство поиска возвращает набор результатов определенного типа, с которым легко производить итерацию. Каждый отдельный результат поиска заключен в объекте. Все классы наборов результатов реализуют интерфейс SeekableIterator, что позволяет легко производить итерацию и извлечение определенного результата.

29.8.6.1. Zend_Service_Yahoo_ResultSet

Каждый из классов, реализующих набор результатов поиска, является наследником базового класса Zend_Service_Yahoo_ResultSet.

Все наборы результатов поиска возвращают объекты наследников класса Zend_Service_Yahoo_Result.

29.8.6.1.1. Zend_Service_Yahoo_ResultSet::totalResults()

int totalResults();

Возвращает общее количество результатов поиска.

29.8.6.1.2. Свойства класса

Таблица 29.15. Свойства класса Zend_Service_Yahoo_ResultSet

Имя Тип Описание
totalResultsAvailable int Общее количество результатов поиска
totalResultsReturned int Количество результатов в данном наборе
firstResultPosition int Позиция первого результата в данном наборе по отношению к общему количеству результатов поиска (смещение)

Назад к списку классов

29.8.6.2. Zend_Service_Yahoo_WebResultSet

Zend_Service_Yahoo_WebResultSet представляет набор результатов поиска веб-страниц через Yahoo! Web Search.

[Замечание] Замечание

Zend_Service_Yahoo_WebResultSet является наследником класса Zend_Service_Yahoo_ResultSet.

Назад к списку классов

29.8.6.3. Zend_Service_Yahoo_ImageResultSet

Zend_Service_Yahoo_ImageResultSet представляет набор результатов поиска изображений через Yahoo! Image Search.

[Замечание] Замечание

Zend_Service_Yahoo_ImageResultSet является наследником класса Zend_Service_Yahoo_ResultSet.

Назад к списку классов

29.8.6.4. Zend_Service_Yahoo_LocalResultSet

Zend_Service_Yahoo_ImageResultSet представляет набор результатов поиска торговых и сервисных предприятий через Yahoo! Local Search.

Таблица 29.16. Свойства класса Zend_Service_Yahoo_LocalResultSet

Имя Тип Описание
resultSetMapURL string URL страницы, содержащей карту, на которой отмечены все найденные предприятия.
[Замечание] Замечание

Zend_Service_Yahoo_LocalResultSet является наследником класса Zend_Service_Yahoo_ResultSet.

Назад к списку классов

29.8.6.5. Zend_Service_Yahoo_NewsResultSet

Zend_Service_Yahoo_ImageResultSet представляет набор результатов поиска новостей через Yahoo! News Search.

[Замечание] Замечание

Zend_Service_Yahoo_NewsResultSet является наследником класса Zend_Service_Yahoo_ResultSet.

Назад к списку классов

29.8.6.6. Zend_Service_Yahoo_Result

Каждый из отдельных результатов поиска является объектом класса-наследника от базового класса Zend_Service_Yahoo_Result.

29.8.6.6.1. Свойства класса

Таблица 29.17. Свойства класса Zend_Service_Yahoo_Result

Имя Тип Описание
Title string Заголовок результата поиска
Url string URL результата поиска
ClickUrl string URL для ссылки на результат поиска

Назад к списку классов

29.8.6.7. Zend_Service_Yahoo_WebResult

Каждый из результатов поиска веб-страниц является объектом Zend_Service_Yahoo_WebResult.

29.8.6.7.1. Свойства класса

Таблица 29.18. Свойства класса Zend_Service_Yahoo_WebResult

Имя Тип Описание
Summary string Краткий текст
MimeType string Тип MIME результата
ModificationDate string Дата последнего изменения результата в формате UNIX
CacheUrl string Кэш веб-страницы, если есть
CacheSize int Размер кэша

Назад к списку классов

29.8.6.8. Zend_Service_Yahoo_ImageResult

Каждый из результатов поиска изображений является объектом Zend_Service_Yahoo_ImageResult.

29.8.6.8.1. Свойства класса

Таблица 29.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 Уменьшенная копия изображения

Назад к списку классов

29.8.6.9. Zend_Service_Yahoo_LocalResult

Каждый из результатов поиска торговых и сервисных предприятий является объектом Zend_Service_Yahoo_LocalResult.

29.8.6.9.1. Свойства класса

Таблица 29.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 для ссылки на веб-сайт организации, если есть

Назад к списку классов

29.8.6.10. Zend_Service_Yahoo_NewsResult

Каждый отдельный результат News Search возвращается в виде объекта Zend_Service_Yahoo_NewsResult.

29.8.6.10.1. Свойства класса

Таблица 29.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 Уменьшенная копия изображения к статье, если есть

Назад к списку классов

29.8.6.11. Zend_Service_Yahoo_Image

Все изображения, возвращаемые Yahoo! Image Search и Yahoo! News Search, представляются как объекты Zend_Service_Yahoo_Image.

29.8.6.11.1. Свойства класса

Таблица 29.22. Свойства класса Zend_Service_Yahoo_Image

Имя Тип Описание
Url string URL изображения
Width int Ширина изображения
Height int Высота изображения

Назад к списку классов