как проверить, какая дата идет первой в году при сравнении двух дат с помощью php

#php #javascript #date

#php #javascript #Дата

Вопрос:

Я должен найти, какая дата стоит первой в году при сравнении двух дат. Например, я хочу отобразить дату, которая наступает первой в году. firstDate = 2/3/2011 и SecondDate = 1/1/2011 Я должен получить ответ как 1/1/2011 как сравнить две даты

Комментарии:

1. Пожалуйста, будьте конкретны, если вам нужно сравнить даты с помощью PHP или javascript . Потому что в этом вопросе я не вижу ничего, связанного с javascript, кроме javascript тега.

Ответ №1:

Вы можете сравнить дату с помощью функции strtotime

 $date1=strtotime('2/3/2011');
$date2=strtotime('1/1/2011');

if ($date1 < $date2)
{
   echo '2/3/2011 come first';
}
else
{
   echo '1/1/2011 come first';
}
  

Но имейте в виду ошибку 2038 года

Временные метки Unix не могут обрабатывать даты до Пт, 13 декабря 1901 20:45:54 UTC и после вт, 19 января 2038 03:14:07 UTC

Комментарии:

1. Вместо strtotime() вы также можете использовать mktime().

2. @Udo верно, но зачем кому-то хотеть использовать mktime для чего-либо? Это так неудобно в использовании, особенно в этом случае, когда вам пришлось сначала разделить дату.

3. @Udo G, mktime() понадобятся отдельные параметры в отличие от strtotime()

4. @akila как насчет того, чтобы использовать функцию поиска вместо того, чтобы задавать людям вопросы, на которые уже много раз давались ответы?

5. @Udo G, FirstDate=2/3/2011 его вопрос символизирует, что он намерен использовать 2/3/2011 скорее как строку, чем как отдельные параметры. Но, конечно, я могу ошибаться, но в любом случае использование strtotime() намного лучше.

Ответ №2:

В javascript вы можете использовать Date :

 var d1 = new Date(2011, 2, 2);
var d2 = new Date(2011, 0, 1);
if (d1 > d2) {
    alert('Date 1 is greater than Date 2');
}
...