@DeeUs

Почему неправильно определяется дата?

Здравствуйте!
Почему неправильно определяется дата?
сегодня 31.05
// не правильно 202105
echo date('Ym', strtotime('now -1 month'));

// не правильно 202105
$date = new DateTime();
$date->modify('-1 month');
echo $date->format('Ym');

// правильно 202104
echo date('Ym', strtotime('now -31 day'));

// правильно 202104
$date = new DateTime();
$date->modify('-31 day');
echo $date->format('Ym');

В чем может быть проблема и как её исправить?
  • Вопрос задан
  • 59 просмотров
Решения вопроса 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Месяц назад от 31 мая какое число было? 30 апреля? Ок. А месяц вперёд от 30 апреля будет 30 мая или 31 мая? А месяц вперёд от 31 мая что будет, 30 июня или 1 июля?
Если надо просто определить предыдущий месяц, то используйте 'first day of previous month'.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы