Формат даты с помощью PHP с использованием DatetimePhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Формат даты с помощью PHP с использованием Datetime

Сообщение Anonymous »

У меня есть две даты, которые нужно отобразить в формате

Код: Выделить всё

29th and 30th November 2024
or
28th to 30th November 2024
or
28th October to 30th November 2024
or
30th November and 1st December2024
Я попробовал код ниже.

Код: Выделить всё

                $date1 = new DateTime('2024-09-29');
$month1 = $date1->format('m');
$date2 = new DateTime('2024-09-30');
$month2 = $date2->format('m');
$interval = $date1->diff($date2);
if($month1 == $month2){
if($interval->days == 1){
$result_date = getDayWithSuffix($date1);
$result_date .= ' and ';
$result_date .= getDayWithSuffix($date2);
$result_date .= ' '.$date1->format('F');
$result_date .= ' '.$date1->format('Y');
} else {
$result_date = getDayWithSuffix($date1);
$result_date .= ' to ';
$result_date .= getDayWithSuffix($date2);
$result_date .= ' '.$date1->format('F');
$result_date .= ' '.$date1->format('Y');
}
} else {
if($interval->days == 1){
$result_date = getDayWithSuffix($date1);
$result_date .= ' '.$date1->format('F');
$result_date .= ' and ';
$result_date .= getDayWithSuffix($date2);
$result_date .= ' '.$date2->format('F');
$result_date .= ' '.$date1->format('Y');
} else {
$result_date = getDayWithSuffix($date1);
$result_date .= ' '.$date1->format('F');
$result_date .= ' to ';
$result_date .= getDayWithSuffix($date2);
$result_date .= ' '.$date2->format('F');
$result_date .= ' '.$date1->format('Y');
}
}
Есть ли лучший способ добиться этого?


Подробнее здесь: https://stackoverflow.com/questions/789 ... g-datetime
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»