no-image

date_format_postedでシャレオツタイム!

CodeReposで「ぺちぺはなんかおもしれーソースねぇのかな」とリポジトリの中をうろうろしていたらシャレオツなSmartyプラグインを発見したので紹介.

modifier.date_format_posted

このSmartyプラグインは「Y-m-d H:i:s」な(正確にいうとstrtotimeできる)値を入れると,現在時刻からの経過時間を表示してくれちゃったりするものです.


var_dump(smarty_modifier_date_format_posted("2007-12-06 12:00:00"));
var_dump(smarty_modifier_date_format_posted("2007-12-06 21:00:00"));
var_dump(smarty_modifier_date_format_posted("2007-12-06 21:40:00"));

と入れると,


string(7) " 今日"
string(10) " 40 分前"
string(10) " 58 秒前"

と返ってきます.あ,modifierですんで,smartyのテンプレートの上なら


{$date|date_format_posted}

みたいな感じで書くことになります.

ちなみにEthnaでSmartyプラグインを登録する時はphp/Ethna/Tips/Smartyプラグインを簡単に追加するみたいな感じにするとお手軽ですよ.