今日の目標は、RSSを解析して、投稿内容を表示することなのだ。
というわけで、まずは「XML RSS」とか「XML PHP パース」とかでググってみるわけ。
それで出てきたサイトの内容を参考にすれば、ほぼ終わり。

終わりなんだけど、、、終わりなんだけどさ、、、、、

さっぱり意味がわからないのですよ。

http://www.hawk.34sp.com/stdpls/php/xml_parse.html


これとか。
いや、わからないってのはスキルがないからわからないんだけどさ。

というわけで、一生懸命解析しました。

ダイジェストでお楽しみください。

XMLのパースな手順(ダイジェスト版)

材料:

  • XML(今回はRSS)のファイルまたはURL一つ
  • xml_parser_create();
  • xml_parse_set_option();
  • xml_parse_into_struct();
  • mb_convert_encoding();
  • そのほか、echoなど…

今回は単純に表示をしただけなので難しい事はしていません。とりあえず、流れは。

  1. RSSファイルを開く、読み込む
  2. 読み込んだファイルをパースする
  3. パース下ファイルを連想配列に入れる
  4. 配列を表示する

というような流れです。

ファイルを開くなどは、基本的な部分なので、個人的に何とかしてください。
まず、XMLのパースに必要なのはパーサです。

// パーサ作成
$parser=xml_parser_create();

これでパーサの作成完了。(パーサがなんなのかは知りません)
次に、パーサオプションを指定します。

// パーサオプションを指定
xml_parser_set_option($parser,XML_OPTION_SKIP_WHITE,1);

これでパーサオプションの指定が完了です。(パーサオプションがなんなのかはしりま。。。略)
続いて、パースを実行して連想配列にします。

// パース実行、連想配列にパース結果代入
xml_parse_into_struct($parser,$buff,$values,$idx);
作ったパーサ[$parser]によって、[$buff]の中のXMLを[$values]に連想配列でぶち込みます。($idxがなんなのかはしr略)

// パーサ開放
xml_parser_free($parser);

連想配列にいれる。

それを表示する。

複数のRSSを読み込む場合は、XMLのヘッドタグを解析して、そこでフィードが終わってしまうので、やはりDBに一度つっこんで、フィードを再表示するようにひと工夫が必要そうだ。

ツイートツイート

Related posts:

  1. MTのバグ?
  2. MTをインストール
  3. Macでの書き込み

 Leave a Reply

(required)

(required)

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

   
© 2011 LEGGODT.COM Suffusion theme by Sayontan Sinha