[PHP] twitterのRSSからreplyを取り除く
twitterのRSSを自分のウェブページに表示していたのですが、そのままだとつぶやきもリプライ(mention?)もすべて表示されてしまいます。
なので、正規表現でリプライだけ取り除いて表示するようにしました。
RTはそのまま表示してます。
require_once 'lib/rss_fetch.inc';
$twit_feed = 'http://twitter.com/statuses/user_timeline/********.rss';
$twit_rss = fetch_rss($twit_feed);
$max = 20;
$cnt = 0;
echo "<ul>";
foreach($twit_rss->items as $item){
$cnt++;
if($cnt > $max)break;
$title = htmlspecialchars($item['title']);
if(preg_match("/^tjun: @/", $title))continue;
$url = htmlspecialchars($item['link']);
echo " <li><a href=\"$url\">$title</a></li>\n";
}
echo "</ul>";
リプライを取り除くのは以下の部分です。
if(preg_match("/^tjun: @/", $title))continue;
tjunは、自分のtwitterのユーザ名です。先頭が “ユーザ名: @” であれば、リプライと判定してます。久しぶりにPHP書きました。
一応正しく動いているように見えますが、何か間違ってるかもしれません。
Tags: php, twitter




Twitter:
facebook:
flickr: 