Подтвердить что ты не робот

Проверьте, есть ли временная метка сегодня

У меня есть отметка времени в следующем формате (который легко может быть изменен благодаря красоте PHP!).

2011-02-12 14:44:00

Каков самый быстрый/самый простой способ проверить, была ли эта метка взята сегодня?

4b9b3361

Ответ 1

Я думаю:

date('Ymd') == date('Ymd', strtotime($timestamp))

Ответ 2

if (date('Y-m-d') == date('Y-m-d', strtotime('2011-02-12 14:44:00'))) {
    // is today
}

Ответ 3

$offset = date('Z'); //timezone offset in seconds

if (floor(($UNIX_TIMESTAMP + $offset) / 86400) == floor((mktime(0,0,0) + $offset) / 86400)){
    echo "today";
}

Ответ 4

Это то, что я использую для такого рода задач:

/** date comparator restricted by $format.
 @param {int/string/Datetime} $timeA
 @param {int/string/Datetime} $timeB
 @param {string} $format
 @returns : 0 if same. 1 if $timeA before $timeB. -1 if after   */
function compareDates($timeA,$timeB,$format){
    $dateA=$timeA instanceof Datetime?$timeA:(is_numeric($timeA)?(new \Datetime())->setTimestamp($timeA):(new \Datetime("".$timeA)));
    $dateB=$timeB instanceof Datetime?$timeB:(is_numeric($timeB)?(new \Datetime())->setTimestamp($timeB):(new \Datetime("".$timeB)));
    return $dateA->format($format)==$dateB->format($format)?0:($dateA->getTimestamp()<$dateB->getTimestamp()?1:-1);
}

сравнить день: $формат= 'Y-m-d'.
месяц сравнения: $format= 'Y-m'.
и т.д.

в вашем случае:

if(compareDates("now",'2011-02-12 14:44:00','Y-m-d')===0){
    // do stuff
}

Ответ 5

Я предпочитаю сравнивать временные метки (а не строки даты), поэтому я использую это для проверки сегодня.

$dayString = "2011-02-12 14:44:00";
$dayStringSub = substr($dayString, 0, 10);

$isToday = ( strtotime('now') >= strtotime($dayStringSub . " 00:00") 
          && strtotime('now') <  strtotime($dayStringSub . " 23:59") );

Fiddle: http://ideone.com/55JBku

Ответ 6

(date('Ymd') == gmdate('Ymd', $db['time']) ? 'today' : '')

Ответ 7

Вы имеете в виду это?

if( strtotime( date( 'Y-m-d' , strtotime( '2011-02-12 14:44:00' ) ) ) == strtotime( date( 'Y-m-d' ) ) )
{
//IS TODAY;
}