[FuelPHP] 外部のRSSフィードを取得する方法

別のアプリからブログの更新情報を取得する事案があった。

方法

コード

public static function get_feed_data() {
  $feed = file_get_contents('https://b.0218.jp/feed/');
  $data = Format::forge($feed, 'xml')->to_array();

  return $data['channel'];
}

file_get_contents@attributesも取れるけど、今回の場合必要なかったのでポイした。

結果

一応、こんな感じの配列が取れる。

Variable #1:
 (Array, 6 elements) ↵
    title (String): "零弐壱蜂" (12 characters)
    link (String): "https://b.0218.jp" (16 characters)
    description (String): "IT技術からアニメまで様々な情報をストックするサイバーメモ帳(備忘録)です。" (106 characters)
    lastBuildDate (String): "Thu, 05 Feb 2015 07:57:34 +0000" (31 characters)
    language (String): "ja" (2 characters)
    item (Array, 20 elements) ↵
        0 (Array, 7 elements) ↵
            title (String): "[JavaScript] クロージャでグローバル変数にならないようにする" (82 characters)
            link (String): "https://b.0218.jp/20150205165734.html" (36 characters)
            comments (String): "https://b.0218.jp/20150205165734.html#comments" (45 characters)
            pubDate (String): "Thu, 05 Feb 2015 07:57:34 +0000" (31 characters)
            category (Array, 2 elements) ↵
            guid (String): "https://b.0218.jp/?p=1679" (24 characters)
            description (String): "JavaScript 書くときによく使うやつ クロージャ こんな感じでコード全体を囲ってた..." (112 characters)
        1 (Array, 7 elements) ↵
        2 (Array, 7 elements) ↵
        3 (Array, 7 elements) ↵
        4 (Array, 7 elements) ↵
        5 (Array, 7 elements) ↵
        6 (Array, 7 elements) ↵
        7 (Array, 7 elements) ↵
        8 (Array, 7 elements) ↵
        9 (Array, 7 elements) ↵
        10 (Array, 7 elements) ↵
        11 (Array, 7 elements) ↵
        12 (Array, 7 elements) ↵
        13 (Array, 7 elements) ↵
        14 (Array, 7 elements) ↵
        15 (Array, 7 elements) ↵
        16 (Array, 7 elements) ↵
        17 (Array, 7 elements) ↵
        18 (Array, 7 elements) ↵
        19 (Array, 7 elements) ↵