そのファイルが更新された日時を表示する上記にあるようなSSIは、
last update at <!--#echo var="LAST_MODIFIED"-->
ということは分かるとおもいます。これはSSIの環境変数を使って表示されるものです。
これを、最終更新されてからの時間でSSI表示したい場合はperlの
ファイルテスト演算子を使います。
#!/usr/local/bin/perl
# このファイル名:lastmod.pl (パーミッションは755)
#対象とするファイル
$file = "/home/user/public_html/..../***.xxx";
$day = -M $file;
$hi = int($day);
$hour = ($day - $hi)*24;
$ji = int($hour);
$minute = ($hour - $ji)*60;
$hun = int($minute);
$second = ($minute - $hun)*60;
$byou = int($second + 0.5);
print $hi.'日'.$ji.'時間'.$hun.'分'.$byou.'秒';
HTMLにはSSI記述をします。(化ける場合は漢字コード変換をします。)
<!--#exec cmd="./lastmod.pl"-->
<!--#exec cmd="./lastmod.pl | /***/***/***/nkf -s"-->
最終更新からの日数は10進数(例 1.00154546513243)で取得されます。
これを時間表示に変換する部分のスクリプトは竹中誠氏よりいただきました。他、ニフティより篠田氏にも
情報をいただき、ありがとうございました。
|