(PHP 5 >= 5.5.0, PHP 7, PHP 8)
DateTimeImmutable::modify — Creates a new object with modified timestamp
Creates a new DateTimeImmutable object with modified timestamp. The original object is not modified.
modifier
A date/time string. Valid formats are explained in Date and Time Formats .
Returns
DateTimeImmutable
on success.
Procedural style returns
false
on failure.
If an invalid Date/Time string is passed, DateMalformedStringException is thrown. Previous to PHP 8.3, this was a warning.
| Versionen | Description |
|---|---|
| 8.3.0 |
DateTimeImmutable::modify()
now throws
DateMalformedStringException
if an
invalid string is passed. Previously, it returned
false
,
and a warning was emitted.
|
Example #1 DateTimeImmutable::modify() example
Object-oriented style
<?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-13
Example #2 Beware 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