Задать вопрос
@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');

В чем может быть проблема и как её исправить?
  • Вопрос задан
  • 63 просмотра
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Месяц назад от 31 мая какое число было? 30 апреля? Ок. А месяц вперёд от 30 апреля будет 30 мая или 31 мая? А месяц вперёд от 31 мая что будет, 30 июня или 1 июля?
Если надо просто определить предыдущий месяц, то используйте 'first day of previous month'.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы