Странный баг в php

lutskboy
На сайте с 22.11.2013
Offline
173
246

Привет

заметил сегодня странную вещь

var_dump(strtotime('2020')>strtotime('2023-08-08'));

выдает true. а 

var_dump(strtotime('2020-01-01')>strtotime('2023-08-08'));

выдает уже false

так должно быть в первом варианте?

br.almighty
На сайте с 13.07.2021
Offline
62
#1

Подсказка

echo date(DATE_ATOM, strtotime('2020'));

W1
На сайте с 22.01.2021
Offline
289
#2
lutskboy :

Странный баг в php

Это не баг. Это неопределённость в данных.
Читай мануал:

Замечание:
Формат "Только год" задействуется только в случае, если строка времени была найдена. В противном случае отдаётся предпочтению формату HH MM .

Соответственно "2020" интерпретируется как "сегодня, 20:20".

PHP: Форматы даты - Manual
  • www.php.net
Предостережение Возможен выход за границы диапазона форматов и . День месяца с порядковым номером 0 подразумевает последний день предыдущего месяца в результате выхода за границы диапазона. Согласно написанному, "2008-08-00" равносильно "2008-07-31", а "2008-06-31" соответствует "2008-07-01" (в июне всего 30 дней). Обратите внимание, что...
Мой форум - https://webinfo.guru –Там я всегда на связи

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий