HPとPHP。

なんか紛らわしいタイトルだ・・・
まぁいいか。

今回、ザ★レコーズのHPを更新するに当たって、
PHPという言語を使ったわけだが、
いかんせん慣れない代物だったので、忘れないように備忘録。

今回のミッションは、
「RSSフィードから、blogの更新情報を取り出す。」
「更新が一日以内なら表示」

RSSフィードにて、最終更新時刻が表示されているのは、
xmlファイル中の「<lastBuildDate>」ってタグで、
ファイル中のこのタグに囲まれているところの情報をピンポイントで頂く。
使ったのは、こんなコード。

================================
$url = 'http://shinbashi.areablog.jp/rss/100112/records.xml';
$buf = file_get_contents($url);
preg_match_all('@<lastBuildDate>(.*?)</lastBuildDate>@s',$buf,$match, PREG_SET_ORDER);
================================

※RSSの参考に使ったのは、うちのメンバーが執筆中の「新橋ブログ」です。

上のような感じで書いていくと、
$matchって配列の変数にblogの最終更新日時が格納されているという・・・
($match[0][1]を出力すると見れる)

で、これをそのまま出力するとこんな感じ。

「Sat, 23 Jan 2010 17:30:10 +0900」

UNIXに慣れてる人ならおなじみの形だけど、
これだと扱いづらいので、strtotimeって関数を使って秒に変換。
ついでに、現在時刻も取得。

================================
$lastDate = strtotime($match[0][1]);
$nowDate = strtotime("now");
================================

ここまでくればもうゴール目前。
さっき算出した現在時刻から、最終更新時刻を引いてやれば、
「今から何秒前に更新したか」が算出できる。
で、今回のミッションのように「一日以内」が目的ならば、
60(秒)×60(分)×24(時間) = 86400秒よりも、差分の時刻が小さければOK。

あとは、一日以内のときに起こしたいアクションを書いてやるだけ。

こんな感じでblogの更新状況とかが分かれば、
flashとか使わなくても、ある程度動きのあるHPが作れるね。
PHP、とっつきづらそうで敬遠してたけど、
基本はHTMLに埋め込むだけだし、意外と便利だった〜
profile
20121202_2000000.jpg
calendar
      1
2345678
9101112131415
16171819202122
23242526272829
3031     
<< July 2017 >>
selected entries
categories
recent comment
links
weather report

-天気予報コム-
search this site.
others
mobile
qrcode
sponsored links
powered
無料ブログ作成サービス JUGEM