smarty で日付け比較 新着などnew表示

smarty 日付け比較

$data に登録された日付けが入っているとして

(2010-12-07 09:01:03 とか)

$smarty.nowで今日の日付け

-24*60*60*7 で一週間まえの日付けを計算して

{$smarty.now-24*60*60*7}

比較する。

{if $data > $smarty.now-24*60*60*7|date_format:”%Y-%m-%d”}
NEW!
{else} 
{/if}
今日から 1週間前の日付けよりあとであればNEWで

一週間前より前の日付けなら表示しない。

$todays = date(“Y-m-d”);
$daysago = date(“Y-m-d”, strtotime(“$todays -7 day”));
$smarty->assign(“daysago”, $daysago);

テンプレート
$updatedaysに日付データが入ってるとして(2012-09-09とか)

{if $updatedays|date_format:”%Y-%m-%d” > $daysago|date_format:”%Y-%m-%d”}
new!{/if}

MySQL日付け

mySQLで今日より先の日付けを取得する

一週間後の日付け
カラム名  = DATE_ADD(CURRENT_DATE(),INTERVAL 1 WEEK)
一ヶ月後の日付け
カラム名  = DATE_ADD(CURRENT_DATE(),INTERVAL 1 MONTH)
一年後の日付け
カラム名  = DATE_ADD(CURRENT_DATE(),INTERVAL 1 YEAR)

日付け比較
カラムに日付けが入っているとして
1週間以内
(カラム名  BETWEEN (NOW() – INTERVAL 1 WEEK) AND NOW())
1ヶ月以内
(カラム名  BETWEEN (NOW() – INTERVAL 1 MONTH) AND NOW())
1年以内
(カラム名  BETWEEN (NOW() – INTERVAL 1 YEAR) AND NOW())