# Zend_Service_Yahoo(日本語)

## 導入

Zend_Service_Yahoo は、さまざまな Yahoo! REST API 群を使用するための単純な API です。 Zend_Service_Yahoo を使用すると、 Yahoo! Web search、Yahoo! News、Yahoo! Local、Yahoo! Images を検索できるようになります。 Yahoo! REST API を使用するには、 Yahoo! Application ID が必要です。Application ID を取得するには、 Application ID リクエストフォーム を使用してください。

## Yahoo! を使用したウェブの検索

Zend_Service_Yahoo の webSearch() メソッドを使用すると、Yahoo! でウェブを検索できます。 最初の引数に検索パラメータ、 オプションで二番目の引数に検索オプションの配列を指定します。 指定できるオプションの詳細については Yahoo! Web Search ドキュメント を参照ください。webSearch() メソッドは Zend_Service_Yahoo_WebResultSet オブジェクトを返します。

Yahoo! を使用したウェブの検索

    $yahoo = new Zend_Service_Yahoo("YAHOO_APPLICATION_ID");
    $results = $yahoo->webSearch('PHP');
    foreach ($results as $result) {
        echo $result->Title .'<br />';
    }

## Yahoo! を使用した画像の検索

Zend_Service_Yahoo の imageSearch() メソッドを使用すると、画像の検索ができます。 webSearch() メソッド と同様、最初の引数に検索パラメータ、 オプションで二番目の引数に検索オプションの配列を指定します。 指定できるオプションの詳細については Yahoo! Image Search ドキュメント を参照ください。

Yahoo! を使用した画像の検索

    $yahoo = new Zend_Service_Yahoo("YAHOO_APPLICATION_ID");
    $results = $yahoo->imageSearch('PHP');
    foreach ($results as $result) {
        echo $result->Title .'<br />';
    }

## Yahoo! を使用した動画の検索

Zend_Service_Yahoo の videoSearch() メソッドを使用すると、Yahoo で動画を検索できます。 詳細は Yahoo! Video Search ドキュメント を参照ください。

Yahoo! を使用した動画の検索

    $yahoo = new Zend_Service_Yahoo("YAHOO_APPLICATION_ID");
    $results = $yahoo->videoSearch('PHP');
    foreach ($results as $result) {
        echo $result->Title .'<br />';
    }

## Yahoo! を使用した Local Businesses and Services の検索

localSearch() メソッドを使用すると、 Yahoo! で local businesses and services を検索できます。 詳細は Yahoo! Local Search ドキュメント を参照ください。

Yahoo! を使用した Local Businesses and Services の検索

    $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 の検索

Yahoo! News を検索するのは簡単です。単に newsSearch() メソッドを下の例のように使用すればよいのです。詳細は Yahoo! News Search ドキュメント を参照ください。

Yahoo! News の検索

    $yahoo = new Zend_Service_Yahoo("YAHOO_APPLICATION_ID");
    $results = $yahoo->newsSearch('PHP');
    foreach ($results as $result) {
        echo $result->Title .'<br />';
    }

## Yahoo! Site Explorer Inbound Links の検索

Yahoo! Site Explorer Inbound Links を検索するのは簡単です。 単に inlinkDataSearch() メソッドを下の例のように使用すればいいのです。詳細は Yahoo! Site Explorer Inbound Links ドキュメント を参照ください。

Yahoo! Site Explorer Inbound Links の検索

    $yahoo = new Zend_Service_Yahoo("YAHOO_APPLICATION_ID");
    $results = $yahoo->inlinkDataSearch('http://framework.zend.com/');
    foreach ($results as $result) {
        echo $result->Title .'<br />';
    }

## Yahoo! Site Explorer の PageData の検索

Yahoo! Site Explorer Inbound の PageDate を検索するのは簡単です。 単に pageDataSearch() メソッドを下の例のように使用すればいいのです。詳細は Yahoo! Site Explorer PageData ドキュメント を参照ください。

Yahoo! Site Explorer の PageData の検索

    $yahoo = new Zend_Service_Yahoo("YAHOO_APPLICATION_ID");
    $results = $yahoo->pageDataSearch('http://framework.zend.com/');
    foreach ($results as $result) {
        echo $result->Title .'<br />';
    }

## Zend_Service_Yahoo クラス群

Yahoo! 検索から返される結果は、以下のクラスのいずれかとなります。 検索の種類によってそれに対応した結果セットが返され、 そのセットを順に処理していくと、中には検索の種類に応じた結果オブジェクトが含まれます。 すべての結果セットクラスは SeekableIterator インターフェイスを実装しています。 そのため、順次処理だけでなく特定の結果の処理も簡単にできます。

- Zend_Service_Yahoo_ResultSet

- Zend_Service_Yahoo_WebResultSet

- Zend_Service_Yahoo_ImageResultSet

- Zend_Service_Yahoo_VideoResultSet

- Zend_Service_Yahoo_LocalResultSet

- Zend_Service_Yahoo_NewsResultSet

- Zend_Service_Yahoo_InlinkDataResultSet

- Zend_Service_Yahoo_PageDataResultSet

- Zend_Service_Yahoo_Result

- Zend_Service_Yahoo_WebResult

- Zend_Service_Yahoo_ImageResult

- Zend_Service_Yahoo_VideoResult

- Zend_Service_Yahoo_LocalResult

- Zend_Service_Yahoo_NewsResult

- Zend_Service_Yahoo_InlinkDataResult

- Zend_Service_Yahoo_PageDataResult

- Zend_Service_Yahoo_Image

### Zend_Service_Yahoo_ResultSet

検索の種類に応じた結果セットは、この基底クラスを継承したものです。

各結果セットは、検索の種類に応じた Zend_Service_Yahoo_Result オブジェクトを返します。

#### Zend_Service_Yahoo_ResultSet::totalResults()

int totalResults

検索結果として返された結果の総数を返します。

#### プロパティ

Zend_Service_Yahoo_ResultSet

名前 | 型 | 説明
--- | --- | ---
totalResultsAvailable | int | 見つかった結果の総数。
totalResultsReturned | int | 現在の結果セットに含まれる結果の総数。
firstResultPosition | int | このセットの最初の結果の、結果全体の中での位置。

クラス一覧に戻る

### Zend_Service_Yahoo_WebResultSet

Zend_Service_Yahoo_WebResultSet は Yahoo! Web Search の結果セットを表します。

Zend_Service_Yahoo_WebResultSet は Zend_Service_Yahoo_ResultSet を継承しています。

クラス一覧に戻る

### Zend_Service_Yahoo_ImageResultSet

Zend_Service_Yahoo_ImageResultSet は、Yahoo! Image Search の結果セットを表します。

Zend_Service_Yahoo_ImageResultSet は Zend_Service_Yahoo_ResultSet を継承しています。

クラス一覧に戻る

### Zend_Service_Yahoo_VideoResultSet

Zend_Service_Yahoo_VideoResultSet は、Yahoo! Video Search の結果セットを表します。

Zend_Service_Yahoo_VideoResultSet は Zend_Service_Yahoo_ResultSet を継承しています。

クラス一覧に戻る

### Zend_Service_Yahoo_LocalResultSet

Zend_Service_Yahoo_LocalResultSet は、Yahoo! Local Search の結果セットを表します。

Zend_Service_Yahoo_LocalResultSet のプロパティ

名前 | 型 | 説明
--- | --- | ---
resultSetMapURL | string | 返される結果が記された地図画像を含むウェブページの URL。

Zend_Service_Yahoo_LocalResultSet は Zend_Service_Yahoo_ResultSet を継承しています。

クラス一覧に戻る

### Zend_Service_Yahoo_NewsResultSet

Zend_Service_Yahoo_NewsResultSet は、Yahoo! News Search の結果セットを表します。

Zend_Service_Yahoo_NewsResultSet は Zend_Service_Yahoo_ResultSet を継承しています。

クラス一覧に戻る

### Zend_Service_Yahoo_InlinkDataResultSet

Zend_Service_Yahoo_InlinkDataResultSet は、 Yahoo! Inbound Link Search の結果セットを表します。

Zend_Service_Yahoo_InlinkDataResultSet は Zend_Service_Yahoo_ResultSet を継承しています。

クラス一覧に戻る

### Zend_Service_Yahoo_PageDataResultSet

Zend_Service_Yahoo_PageDataResultSet は、 Yahoo! PageData Search の結果セットを表します。

Zend_Service_Yahoo_PageDataResultSet は Zend_Service_Yahoo_ResultSet を継承しています。

クラス一覧に戻る

### Zend_Service_Yahoo_Result

検索の種類に応じた検索結果は、この基底クラスを継承したものです。

#### プロパティ

Zend_Service_Yahoo_Result のプロパティ

名前 | 型 | 説明
--- | --- | ---
Title | string | 結果項目のタイトル
Url | string | 結果項目の URL
ClickUrl | string | 結果項目へリンクする URL

クラス一覧に戻る

### Zend_Service_Yahoo_WebResult

Web Search の結果は Zend_Service_Yahoo_WebResult オブジェクトとして返されます。

#### プロパティ

Zend_Service_Yahoo_WebResult のプロパティ

名前 | 型 | 説明
--- | --- | ---
Summary | string | 結果の概要
MimeType | string | 結果の MIME 型
ModificationDate | string | UNIX タイムスタンプで表した、結果の最終更新時刻
CacheUrl | string | 結果に対応する Yahoo! ウェブキャッシュの URL (もし存在すれば)
CacheSize | int | キャッシュエントリの大きさ

クラス一覧に戻る

### Zend_Service_Yahoo_ImageResult

Image Search の結果は Zend_Service_Yahoo_ImageResult オブジェクトとして返されます。

#### プロパティ

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_VideoResult

Video Search の結果はZend_Service_Yahoo_VideoResult オブジェクトとして返されます。

#### プロパティ

Zend_Service_Yahoo_VideoResult のプロパティ

名前 | 型 | 説明
--- | --- | ---
Summary | string | 結果の概要
RefererUrl | string | 動画を含むページの URL
FileSize | int | 動画のサイズを表すバイト数
FileFormat | string | 動画のフォーマット (avi, flash, mpeg, msmedia, quicktime, realmedia, など)
Height | int | 動画の高さを表すピクセル数
Width | int | 動画の幅を表すピクセル数
Duration | int | 動画の長さを表す秒数
Channels | int | 動画の音声チャネル数
Streaming | boolean | ストリーミング形式かどうか
Thumbnail | Zend_Service_Yahoo_Image | 画像のサムネイル

クラス一覧に戻る

### Zend_Service_Yahoo_LocalResult

Local Search の結果は Zend_Service_Yahoo_LocalResult オブジェクトとして返されます。

#### プロパティ

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 (もしわかれば)

クラス一覧に戻る

### Zend_Service_Yahoo_NewsResult

News Search の結果は Zend_Service_Yahoo_NewsResult オブジェクトとして返されます。

#### プロパティ

Zend_Service_Yahoo_NewsResult のプロパティ

名前 | 型 | 説明
--- | --- | ---
Summary | string | 結果の概要
NewsSource | string | 記事を配信した会社
NewsSourceUrl | string | 記事を配信した会社の URL
Language | string | 記事が記述されている言語
PublishDate | string | UNIX タイムスタンプで表した、記事の配信時刻
ModificationDate | string | UNIX タイムスタンプで表した、記事の最終更新時刻
Thumbnail | Zend_Service_Yahoo_Image | 記事の画像サムネイル (もしあれば)

クラス一覧に戻る

### Zend_Service_Yahoo_InlinkDataResult

Inbound Link Search の結果の各項目は Zend_Service_Yahoo_InlinkDatabResult オブジェクトで返されます。

クラス一覧に戻る

### Zend_Service_Yahoo_PageDataResult

Page Data Search の結果の各項目は Zend_Service_Yahoo_PageDatabResult オブジェクトで返されます。

クラス一覧に戻る

### Zend_Service_Yahoo_Image

Yahoo! Image Search あるいは Yahoo! News Search が返すすべての画像は Zend_Service_Yahoo_Image オブジェクトで表されます。

#### プロパティ

Zend_Service_Yahoo_Image のプロパティ

名前 | 型 | 説明
--- | --- | ---
Url | string | 画像の URL
Width | int | 画像の幅
Height | int | 画像の高さ

クラス一覧に戻る