Wpis z mikrobloga

@Czlowiek_Ludzki: trochę offtop, ale daty w php to w ogóle #!$%@? patologia. Nie wiem kto wymyślił żeby DateTime::modify jednocześnie mutowało obiekt i zwracało jego refa, można się mocno zdziwić robiąc $newDate = $date->modify('whatever');.

Albo inny fajny przykład, (new \DateTime('2021-05-31'))->modify('-1 month')->format('Y-m-d');.

@mariecziek: immutable pozostaje niezmienione w przypadku modify, ale to też do końca nie rozwiązuje problemu. Immutable nie jest wszędzie obsługiwane, wiele paczek zamiast na DateTimeInterface opiera swoje interfejsy na zwykłym DateTime.

Właściwie rozumiem potrzebę istnienia mutowalnych dat, ale wydaje mi się że to słaby wybór na defaulta. Zdecydowanie lepsze byłoby DateTime i DateTimeMutable.