DateTimeImmutable::modify Создаёт новый объект с изменённой временной меткой &reftitle.description; #[\NoDiscard] public DateTimeImmutableDateTimeImmutable::modify stringmodifier Метод клонирует исходный объект даты и времени, модифицирует в копии метку времени и возвращает изменённую копию объекта DateTimeImmutable. Исходный объект не изменяется. &reftitle.parameters; modifier &date.formats.parameter; &reftitle.returnvalues; Метод возвращает новый объект DateTimeImmutable, если выполнился успешно,&return.falseforfailure;. &return.falseforfailure.style.procedural; &reftitle.errors; Метод DateTimeImmutable::modify теперь выбрасывает исключение DateMalformedStringException, если передали строку с недопустимой датой и временем. Раньше метод возвращал значение false и выдавал предупреждение. &reftitle.changelog; &Version; &Description; 8.3.0 При передаче строки в недопустимом формате вместо предупреждения метод теперь выбрасывает исключение DateMalformedStringException. &reftitle.examples; Пример изменения метки времени методом <function>DateTimeImmutable::modify</function> &style.oop; modify('+1 day'); echo $newDate->format('Y-m-d'); ]]> &example.outputs; Пример поведения при добавлении или вычитании месяцев modify('+1 month'); echo $newDate1->format('Y-m-d') . "\n"; $newDate2 = $newDate1->modify('+1 month'); echo $newDate2->format('Y-m-d') . "\n"; ]]> &example.outputs; &reftitle.seealso; DateTimeImmutable::add DateTimeImmutable::sub DateTimeImmutable::setDate DateTimeImmutable::setISODate DateTimeImmutable::setTime DateTimeImmutable::setTimestamp