diff --git a/NEWS b/NEWS index e55e5869718..42d4da1efad 100644 --- a/NEWS +++ b/NEWS @@ -7,6 +7,10 @@ PHP NEWS different type). (Derick) . Fixed bug GH-8964 (DateTime object comparison after applying delta less than 1 second). (Derick) + . Fixed bug #75035 (Datetime fails to unserialize "extreme" dates). + (Derick) + . Fixed bug #80483 (DateTime Object with 5-digit year can't unserialized). + (Derick) . Fixed bug #81263 (Wrong result from DateTimeImmutable::diff). (Derick) - DBA: diff --git a/ext/date/tests/bug80483.phpt b/ext/date/tests/bug80483.phpt new file mode 100644 index 00000000000..17dbcc10aba --- /dev/null +++ b/ext/date/tests/bug80483.phpt @@ -0,0 +1,35 @@ +--TEST-- +Bug #80483 (DateTime Object with 5-digit year can't unserialized) +--INI-- +date.timezone=UTC +--FILE-- +SetTime(0, 0, 0); +$the_date->SetDate(20201, 01, 01); + +var_dump($the_date); + +$serialized = serialize($the_date); +var_dump($serialized); +var_dump(unserialize($serialized)); +?> +--EXPECTF-- +object(DateTime)#%d (%d) { + ["date"]=> + string(28) "+20201-01-01 00:00:00.000000" + ["timezone_type"]=> + int(3) + ["timezone"]=> + string(3) "UTC" +} +string(116) "O:8:"DateTime":3:{s:4:"date";s:28:"+20201-01-01 00:00:00.000000";s:13:"timezone_type";i:3;s:8:"timezone";s:3:"UTC";}" +object(DateTime)#%d (%d) { + ["date"]=> + string(28) "+20201-01-01 00:00:00.000000" + ["timezone_type"]=> + int(3) + ["timezone"]=> + string(3) "UTC" +}