@tatarrr95

Почему 31 февраля переводится в 3 марта?

Имею строку 31.2.1975 , пытаюсь перевести ее в дату а потом в строку методом
date_create_from_format('d.m.Y', '31.2.1975')->format('d.m.Y');

и получаю в ответе 03.03.1975 , а не ошибку, хотя хочу ошибку. Как получить ошибку?
  • Вопрос задан
  • 111 просмотров
Решения вопроса 1
DevMan
@DevMan
используйте DateTime::getLastErrors() для проверки.
как пример: https://ideone.com/ddxW1J
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@DeboshiR
Свободу разработчикам!!!
Можно получать количество дней в месяце и если день месяца больше чем дней в месяце, то возвращать ошибку.
https://www.php.net/manual/ru/function.cal-days-in...
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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