PEARのXML_RSSについてので質問です。

複数のサイトのRSSを読み込み、一覧表示するページを作っています。
下記の記述だと一つのRSSしか表示できませんでした、
どうすれば$rssに他のRSSも混ぜる事ができますでしょうか。
宜しくお願い致します。


<?php
require_once("XML/RSS.php");
?>
<?php
/**
* RSSファイルへのURIをコンストラクタの引数に渡す
*/
$rss =& new XML_RSS("http://www.doyouphp.jp/home.rss");

/**
* RSSファイルをパースする
*/
$rss->parse();

echo "<h1><a href=¥"http://www.doyouphp.jp/¥">Do You PHP?</a>のヘッドライン</h1>¥n";
echo "<ul>¥n";

/**
* getItemsメソッドを使用して全item要素を取得し、表示する
*/
foreach ($rss->getItems() as $item) {
echo "<li><a href=¥"" . $item['link'] . "¥">" .
mb_convert_encoding($item['title'], mb_internal_encoding(), 'auto') .
"</a></li>¥n";
}

echo "</ul>¥n";
?>

回答の条件
  • 1人5回まで
  • 登録:
  • 終了:2007/11/13 17:30:42
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答2件)

id:nikuzure No.1

回答回数89ベストアンサー獲得回数0

ポイント35pt

例えばですが

$aUrlList = array("URL1","URL2",…);

としてリストを作っておいて

foreach($aUrlList as $key => $value){

$rss =& new XML_RSS($value);

~以下パース処理等~

}

とすることで、順番に取得する事が出来ます。

id:yamanekomaabo

ご回答ありがとうございます!

教えて頂いたやり方で順番に表示できました。

ただ、URL1とURL2のrss情報を1つにまとめて、日付順番に表示したいのです。

説明足らずで申し訳ございません。。。

自分用のhttp://wwwwwwww.ws/のサイトのようなページを作りたかったのです。

2007/11/06 16:02:35
id:nikuzure No.2

回答回数89ベストアンサー獲得回数0

ポイント35pt

混在で、ということですね、失礼しました。

では以下の手順ではいかがでしょうか。

$aUrlList = array("URL1","URL2",…);

foreach($aUrlList as $key => $value){

  $rss =& new XML_RSS($value);

ここまでは同じですが、取得した値を別の配列に格納します。

その時、日付を同じ形式にしてください。

例:

$array[$key]['date'] = タイムスタンプ等

$array[$key]['title'] = タイトル

$array[$key]['url'] = URL

こうすることで

$array[0]['date'] = タイムスタンプ1

$array[0]['title'] = タイトル1

$array[0]['url'] = URL1

$array[1]['date'] = タイムスタンプ2

$array[1]['title'] = タイトル2

$array[1]['url'] = URL2

~以下略~

の形式となります。

出来上がった配列を、以下の関数でソートしてあげてください。

usort($array , "cmp");

function cmp($a , $b){

   return $a['date'] >= $b['date'];

}

$array の内容を、cmp という function に渡し、date で比較をし、ソートします。

比較を逆にすれば、並びも逆になります。

こうすると、$array の値がソートされます。

id:yamanekomaabo

ご回答ありがとうございます。

教えて頂いたように試しているのですが、、、知識が乏しく苦戦中です。

頑張ってみます。

2007/11/06 20:57:46

コメントはまだありません

この質問への反応(ブックマークコメント)

トラックバック

  • 備忘録 - つぶやき 2009-05-26 00:02:17
    つぶやき 00:11 ねよう・・・ 06:07 おきた 06:08 寝ても寝てもぐったりしてる……しんどいのう…… 06:20 なんか嘘みたいなメールきてて「SPAMかなぁ…」と思ったりしてた。原稿終わったらメー
「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません