15.5. Zend_Service_Yahoo

15.5.1. 導入

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 リクエストフォーム を使用してください。

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

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

例 15.11. 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 />';
}
?>       

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

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

例 15.12. 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 />';
}
?>       

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

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

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

<?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 />';
}
?>       

15.5.5. Yahoo! News の検索

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

例 15.14. 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 />';
}
?>       

15.5.6. Zend_Service_Yahoo クラス群

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

15.5.6.1. Zend_Service_Yahoo_ResultSet

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

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

15.5.6.1.1. Zend_Service_Yahoo_ResultSet::totalResults()

int totalResults();

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

15.5.6.1.2. プロパティ

表 15.13. Zend_Service_Yahoo_ResultSet

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

クラス一覧に戻る

15.5.6.2. Zend_Service_Yahoo_WebResultSet

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

[注意] 注意

Zend_Service_Yahoo_WebResultSetZend_Service_Yahoo_ResultSet を継承しています。

クラス一覧に戻る

15.5.6.3. Zend_Service_Yahoo_ImageResultSet

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

[注意] 注意

Zend_Service_Yahoo_ImageResultSetZend_Service_Yahoo_ResultSet を継承しています。

クラス一覧に戻る

15.5.6.4. Zend_Service_Yahoo_LocalResultSet

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

表 15.14. Zend_Service_Yahoo_LocalResultSet のプロパティ

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

Zend_Service_Yahoo_LocalResultSetZend_Service_Yahoo_ResultSet を継承しています。

クラス一覧に戻る

15.5.6.5. Zend_Service_Yahoo_NewsResultSet

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

[注意] 注意

Zend_Service_Yahoo_NewsResultSetZend_Service_Yahoo_ResultSet を継承しています。

クラス一覧に戻る

15.5.6.6. Zend_Service_Yahoo_Result

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

15.5.6.6.1. プロパティ

表 15.15. Zend_Service_Yahoo_Result のプロパティ

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

クラス一覧に戻る

15.5.6.7. Zend_Service_Yahoo_WebResult

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

15.5.6.7.1. プロパティ

表 15.16. Zend_Service_Yahoo_WebResult のプロパティ

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

クラス一覧に戻る

15.5.6.8. Zend_Service_Yahoo_ImageResult

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

15.5.6.8.1. プロパティ

表 15.17. 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 画像のサムネイル

クラス一覧に戻る

15.5.6.9. Zend_Service_Yahoo_LocalResult

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

15.5.6.9.1. プロパティ

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

クラス一覧に戻る

15.5.6.10. Zend_Service_Yahoo_NewsResult

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

15.5.6.10.1. プロパティ

表 15.19. Zend_Service_Yahoo_NewsResult のプロパティ

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

クラス一覧に戻る

15.5.6.11. Zend_Service_Yahoo_Image

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

15.5.6.11.1. プロパティ

表 15.20. Zend_Service_Yahoo_Image のプロパティ

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

クラス一覧に戻る