SimplepieでRSSを取得・表示する

PHP

SimplepieでRSSを取得し、表示する方法です。ブログ記事を取得して表示したい場合などに便利かもしれません。よく忘れるのでメモしておきます。

構成

  • cacheフォルダ(書き込み出来るパーミッションに777とか)
  • index.php←RSSを取得・表示するプログラムを記述したファイル
  • simplepie.inc←RSS解析してくれるファイル

index.php

“`<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>RSS取得</title>
</head>

<body>
<ul class="blog-new">
<?php
require_once('./simplepie.inc');

$feed = new SimplePie();
$site_roll = array( 'https://0017.org/feed',
'https://0017.org/feed'
);
foreach($site_roll as $url){
$feed->set_feed_url( $url );
$feed->set_cache_location("./cache/");
$feed->init();
$feed->handle_content_type();
foreach ($feed->get_items() as $item){
$url = $item->get_permalink();
$title = $item->get_title();
$date_timestamp = $item->get_date('U');
$desc = $item->get_description();
$date = $item->get_date('Y/m/d');
$koushin_string = '<li>' . $date . ' <a href="' . $url .'?phpMyAdmin=F5sxRMCczujvnYYfE491K6YXxZ7">' . $title . '</a><br />'. $desc .'</li>';
$rssarray["{$date_timestamp}"] = $koushin_string;
}
}
krsort($rssarray);
echo "<ul>\n";
for(reset($rssarray); $key=key($rssarray); next($rssarray)){
echo $rssarray[$key];
}
echo "</ul>\n";
?>
</ul>

</body>
</html>“`

タイトルとURLをコピーしました