![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
Yahoo API を利用してWEB検索の機能を使おうと考えています。
そこで、
Yahoo!デベロッパーネットワーク - サンプルコード集 ;検索サンプルコード
http://developer.yahoo.co.jp/sample/search/sampl …
このページよりphpファイルをダウンロードして試し一応成功しました。
http://cgi.geocities.jp/ydevnet/sample/search/sa …
(このページはサンプルです)
検索結果を見てみるとごちゃごちゃしていて見にくいです。
そこで以下のようなページにしたいのですが
http://phpspot.org/lab/yapi/web.php?q=yahoo
簡単に修正できないでしょうか?
ファイルは
・common.php
・YJSearchExample.php
なのですが、どの辺りを修正すればいいでしょうか?
ご指導よろしくお願いします。
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
$xml->Resultという配列に連想配列で格納されている値を配列のキー(連想配列名)によって、switch文で振り分けを行っているものになります。
$keyと記述されている部分が、連想配列名
$valueと記述されている部分がその連想配列名に格納されている値
です。
ですので、ここのswitch文の振り分け方法を修正してやれば、表示結果を修正することが出来るのですが、
配列の扱いや条件分岐を修正するのが困難、ということであれば
質問者さんの「簡単に修正できないか」という条件に関しては、「No」となってしまいます。
この回答への補足
ご解答ありがとうございまさいた。
自分でなんとかここまでできました。
http://daily.xsrv.jp/YJSearchExample.php?
後は、タイトルを太字にしてそこにリンクを貼りたいのですが、自分の力では出来ませんでした。(あと、検索結果で各URLの下に「text/html」と言うのも消したいです)
すいませんが、どなたか教えていただけないでしょうか?
よろしくお願いします。
ちなみにYJSearchExample.phpは以下のようになっています。
<?php
/** @mainpage
* 検索ページ
*/
/**
* @file
* @brief 検索結果を表示
*
* 検索フォームを表示し、
* フォームから入力された値を条件に、ウェブ検索APIを利用して、検索した結果をhtmlに埋め込んで表示します。
*
* PHP version 5
*/
require_once('./common.php');//共通ファイル読み込み(使用する前に、appidを指定してください。)
$q=build_query();
// 選択したAPIの種類を設定
$xml = simplexml_load_file($service[$_REQUEST['type']].$q);
// root要素を参照
foreach($xml->attributes() as $name=>$attr) {
$res[$name]=$attr;
}
$first = $res['firstResultPosition'];
$last = $first + $res['totalResultsReturned']-1;
echo "<p>Matched ${res[totalResultsAvailable]}, showing $first to $last</p>\n";
if(!empty($res['ResultSetMapUrl'])) {
echo "<p>Result Set Map: <a href=\"${res[ResultSetMapUrl]}\">${res[ResultSetMapUrl]}</a></p>\n";
}
for($i=0; $i<$res['totalResultsReturned']; $i++) {
foreach($xml->Result[$i] as $key=>$value) {
switch($key) {
case 'Thumbnail':
echo "<img src=\"{$value->Url}\" height=\"{$value->Height}\" width=\"{$value->Width}\" />\n";
break;
case 'PublishDate':
case 'ModificationDate':
break;
default:
if(stristr($key,'url')){
echo "<a href=\"$value\">$value</a><br />\n";
} else {
echo "$value<br />";
}
break;
}
}
echo "<hr />\n";
}
next_prev($res, $first, $last);
done();
?>
すいませんが、よろしくお願いします。
No.1
- 回答日時:
YJSearchExample.php
の
-----------------------------------------------------
for($i=0; $i<$res['totalResultsReturned']; $i++) {
foreach($xml->Result[$i] as $key=>$value) {
-----------------------------------------------------
よりしたにある、switch文のところで
配列のキーにより、HTMLタグで文字列を囲ったものをecho文で出力しています。
恐らくここの条件分岐やHTMLタグで$valueを囲う部分を修正すれば、表示をカスタマイズできるのではないかと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) VBAでWEBサーバー上に保存されたPDFファイルのリンク有効チェックについて 1 2022/11/11 16:04
- Excel(エクセル) PHPプログラムをエクセルに張り付けると検索ボックスがでてくる! 3 2022/05/08 07:10
- PHP PHP ページング データベース 1 2022/06/16 10:30
- その他(SNS・コミュニケーションサービス) Yahoo!とGoogle検索のしくみの違いを教えてください 2 2022/08/14 01:53
- Yahoo!メール yahooメールの検索結果を全て表示するには? 1 2023/05/16 14:34
- SEO 検索エンジン反映遅い 1 2022/06/04 07:35
- PHP htmlspecialcharsが機能していないです。 バグですか? 1 2022/04/05 01:22
- その他(ブラウザ) 教えて!gooなのですが、投稿者名で検索されたら過去の質問が出てきてしまいますか? 3 2023/03/13 02:51
- Perl Perl の外部モジュールの利用方法 3 2022/07/10 18:34
- WordPress(ワードプレス) wordpressでphpを読み込みたい 1 2022/10/30 23:40
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
String だと「 ByRef引数の型が...
-
連想配列のprint_rやvar_dump出...
-
foreachのなかで次のキーを参照...
-
漢字のソートについて
-
file_existsでファイル名の部分...
-
配列を回すとき、最後の要素だ...
-
$_SESSIONに二次元配列を使える...
-
PHP初心者です whileの回数を...
-
【PHP】count( )の結果に納...
-
PHPでドメイン検索?
-
Smartyのテンプレートからjavas...
-
Doctrine(ORM)での複数行Insert
-
セッション配列の取得の仕方
-
phpのfor文の中で配列を作りた...
-
テーブルの行と列の入れ替えは可?
-
preg_replace ereg_replace
-
fgetsで取り込んだ文字をexplod...
-
emptyとcount
-
多次元配列から任意の配列を取...
-
parse_ini_file関数について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
$_SESSIONに二次元配列を使える...
-
file_existsでファイル名の部分...
-
配列をループでたくさん宣言し...
-
foreachのなかで次のキーを参照...
-
String だと「 ByRef引数の型が...
-
PHPのカッコ[ ]の使い方について
-
配列を回すとき、最後の要素だ...
-
配列一致(要素順番は違うが内容...
-
チェックボックス複数選択 mys...
-
漢字のソートについて
-
postgresql関数をつかったレコ...
-
ネストが深い時のforeachはどう...
-
URLのサブドメインとドメイン部...
-
OCI で、SELECT結果行数を取得...
-
【Smarty】foreach関数やsectio...
-
$_POSTを一括してサニタイズし...
-
phpで、連想配列を普通の配列に...
-
チェックボックスが複数選択で...
-
連想配列のprint_rやvar_dump出...
-
PHP 配列の添字に変数は使えない?
おすすめ情報