Я хотел бы знать, как проверить, есть ли отметка времени сегодня, завтра или послезавтра.
У меня есть:
$timestamp = "1313000474";
Как сделать чек, если эта метка времени сегодня, завтра или послезавтра?
например
if today then echo $output = "today"; if tomorrow then echo $output = "tomorrow"; if the day after tomorrow then echo $output = "dayaftertomorrow";
Как это сделать?
EDIT: исправлена временная отметка unix
Заранее спасибо.
$timestamp = "1313000474"; $date = date('Ym-d', $timestamp); $today = date('Ym-d'); $tomorrow = date('Ym-d', strtotime('tomorrow')); $day_after_tomorrow = date('Ym-d', strtotime('tomorrow + 1 day')); if ($date == $today) { echo "today"; } else if ($date == $tomorrow) { echo "tomorrow"; } else if ($date == $day_after_tomorrow) { echo "dayaftertomorrow"; }
<?php $time = "20060713174545"; $date = date('Ym-d', strtotime($time)); $now = date('Ym-d'); $tomorrow = date('Ym-d', time() + strtotime('tomorrow')); $day_after_tomorrow = date('Ym-d', time() + strtotime('tomorrow + 1 day')); if ($date == $now){ echo "It's today"; } elseif($date == $tomorrow){ echo "It's tomorrow"; } elseif($date == $day_after_tomorrow){ echo "It's day after tomorrow"; } else{ echo "None of previous if statements passed"; }
Держите свой код в чистоте …
$timestamp = "1313000474"; // Description demonstrate proposes only... $compare_dates = array( 'today' => 'today!!', 'tomorrow' => 'Tomorrow!!!', 'tomorrow +1 day' => 'day after tomorrow? YEAH', ); foreach($compare_dates => $compare_date => $compare_date_desc){ if(strtotime($compare_date) > $timestamp && $timestamp < strtotime($compare_date.' +1 day') ){ echo $compare_date_desc; break; } }
EDIT: с этим вам не придется беспокоиться, если timestamp уже без часов, минут и секунд … Или создать разные выходные даты, заменив echo $compare_date_desc;
по echo date($compare_date_desc,$timestamp);
<?php function getTheDay($date) { $curr_date=strtotime(date("Ymd H:i:s")); $the_date=strtotime($date); $diff=floor(($curr_date-$the_date)/(60*60*24)); switch($diff) { case 0: return "Today"; break; case 1: return "Yesterday"; break; default: return $diff." Days ago"; } } ?>