- 2008-06-08 (日) 23:52
- PHP
新しくプログラミング言語を覚えたいときに行うべき10の練習問題の第 5 問を解いてみます。今回のお題はこちら。
5.キーワードを入れてYahoo!の検索結果を出力。
このお題には、Yahoo! が提供しているウェブ検索の API を使いました。
API を使うには、事前にアプリケーション ID を登録する必要があります。
指定された URL にリクエストを投げると、結果が XML で返ってくるので、SimpleXML で読み込んで検索結果を表示しています。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html lang="ja">
<head>
<title>yahoo search sample</title>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
</head>
<body>
<form method="GET" action="069_phpstudy_05.php">
<input type="text" name="query" length="30" value="<?php print($_GET['query']) ?>" />
<input type="submit" value="検索" />
</form>
<?php
if(isset($_GET['query']) && strlen($_GET['query']) > 0) {
// appid には登録した ID を指定する
$url = 'http://api.search.yahoo.co.jp/WebSearchService/V1/webSearch?appid=(appid)&query='.urlencode($_GET['query']);
$xml = simplexml_load_file($url);
if($xml) {
print('<p>"'.htmlspecialchars($_GET['query']).'" で検索した結果 : '.number_format($xml['totalResultsAvailable']).'件</p><hr />');
print('<ol>');
foreach($xml->Result as $result) {
print("<li><a href='$result->ClickUrl'>$result->Title</a><br />");
print($result->Summary);
print('</li>');
}
print('</ol>');
}
}
?>
</body>
</html>
参考リンク
関連する記事
Comments:0
Trackbacks:0
- Trackback URL for this entry
- http://www.sukechan.net/archives/69/trackback/
- Listed below are links to weblogs that reference
- 「新しくプログラミング言語を覚えたいときに行うべき10の練習問題」を PHP で解いてみる【第 5 回】 from sukechan.net

