HTMLファイルの最終更新日時をPHPにて表示 (2020/05/01)
以前は,Emacs上でHTMLファイルを更新したときに,html-helper-modeの"html-helper-timestamp-start"と"html-helper-timestamp-end"により最終更新日時をスタンプしていました.しかし,かなり以前からhtml-helper-mode自体が提供されなくなっていたにも関わらず,そのまま放置していました.そのため,HTMLファイルを更新してもHTMLファイル内の最終更新日時(Last modified)は更新されないままでした.
<!-- hhmts start -->Last modified: Fri Jul 22 13:37:07 JST 2011 <!-- hhmts end -->
これを見る限り,かなり放置していましたが,ようやく重い腰を上げて,最終更新日時を表示できるようにしようと試みました.html-helper-modeに代わるようなものが見つからなかったので,PHPで更新することにしました.該当行を次に置き換えることにしました.
<?php echo "Last modified: " . date("Y/m/d H:i", getlastmod()); ?>
これを今まで書いたファイルすべてに手入力で修正するのは手間でしたので,次のrubyスクリプトを書きました.
#!/usr/bin/ruby -i while line = ARGF.gets print line.gsub(/^<!-- hhmts start -->(\w+ \w+: ).*$/,"<?php echo \"\\1\" . date(\"Y/m/d H:i\", getlastmod()); ?>") end
このrubyスクリプトで過去の今後更新予定のないHTMLファイルはその最終更新日時が2020年5月1日になっているかと思います.
梅原 大祐 / UMEHARA Daisuke umehara@kit.ac.jp Last modified: 2020/05/01 17:33