DateTimeImmutable::modify
(PHP 5 >= 5.5.0, PHP 7, PHP 8)
Creates a new object with modified timestamp
Description
Creates a new DateTimeImmutable object with modified timestamp. The original object is not modified.
Parameters
modifierParameter
Return Values
Returns DateTimeImmutable on success. Procedural
Errors/Exceptions
If an invalid Date/Time string is passed, DateMalformedStringException is thrown. Previous to PHP 8.3, this was a warning.
Changelog
| Version | Description |
|---|---|
| 8.4.0 | Now has a tentative return type of DateTimeImmutable. Previously it was DateTimeImmutable|false. |
| 8.3.0 | DateTimeImmutable::modify now throws DateMalformedStringException if an invalid string is passed. Previously, it returned false, and a warning was emitted. |
Examples
DateTimeImmutable::modify() example
Oop
<?php
$date = new DateTimeImmutable('2006-12-12');
$newDate = $date->modify('+1 day');
echo $newDate->format('Y-m-d');The above example will output:
2006-12-13Beware when adding or subtracting months
<?php
$date = new DateTimeImmutable('2000-12-31');
$newDate1 = $date->modify('+1 month');
echo $newDate1->format('Y-m-d') . "\n";
$newDate2 = $newDate1->modify('+1 month');
echo $newDate2->format('Y-m-d') . "\n";The above example will output:
2001-01-31
2001-03-03