(PHP 5 >= 5.5.0, PHP 7, PHP 8)
DateTimeImmutable::add β ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ Π½ΠΎΠ²ΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ Ρ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½ΡΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎΠΌ Π΄Π½Π΅ΠΉ, ΠΌΠ΅ΡΡΡΠ΅Π², Π»Π΅Ρ, ΡΠ°ΡΠΎΠ², ΠΌΠΈΠ½ΡΡ ΠΈ ΡΠ΅ΠΊΡΠ½Π΄
$interval): DateTimeImmutableΠΠ΅ΡΠΎΠ΄ ΠΊΠ»ΠΎΠ½ΠΈΡΡΠ΅Ρ ΡΠ΅ΠΊΡΡΠΈΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ Π΄Π°ΡΡ ΠΈ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ ΠΊ ΠΊΠΎΠΏΠΈΠΈ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π» DateInterval ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΈΠ·ΠΌΠ΅Π½ΡΠ½Π½ΡΡ ΠΊΠΎΠΏΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ° DateTimeImmutable, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ Π½ΠΎΠ²ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅.
interval
ΠΠ±ΡΠ΅ΠΊΡ DateInterval.
ΠΠ΅ΡΠΎΠ΄ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ Π½ΠΎΠ²ΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ DateTimeImmutable Ρ ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌΠΈ Π΄Π°Π½Π½ΡΠΌΠΈ.
ΠΡΠΈΠΌΠ΅Ρ #1 ΠΡΠΈΠΌΠ΅Ρ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»Π° Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠΌ DateTimeImmutable::add()
ΠΠ±ΡΠ΅ΠΊΡΠ½ΠΎ-ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΡΡΠΈΠ»Ρ
<?php
$date = new DateTimeImmutable('2000-01-01');
$newDate = $date->add(new DateInterval('P10D'));
echo $newDate->format('Y-m-d') . "\n";
?>ΠΡΠΈΠΌΠ΅Ρ #2 ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΠΏΡΠΈΠΌΠ΅Ρ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»Π° Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠΌ DateTimeImmutable::add()
<?php
$date = new DateTimeImmutable('2000-01-01');
$newDate = $date->add(new DateInterval('PT10H30S'));
echo $newDate->format('Y-m-d H:i:s') . "\n";
$date = new DateTimeImmutable('2000-01-01');
$newDate = $date->add(new DateInterval('P7Y5M4DT4H3M2S'));
echo $newDate->format('Y-m-d H:i:s') . "\n";
?>Π Π΅Π·ΡΠ»ΡΡΠ°Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΈΠ²Π΅Π΄ΡΠ½Π½ΠΎΠ³ΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠ°:
2000-01-01 10:00:30 2007-06-05 04:03:02
ΠΡΠΈΠΌΠ΅Ρ #3 ΠΡΠΈΠΌΠ΅Ρ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΏΡΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ ΠΌΠ΅ΡΡΡΠ΅Π²
<?php
$date = new DateTimeImmutable('2000-12-31');
$interval = new DateInterval('P1M');
$newDate1 = $date->add($interval);
echo $newDate1->format('Y-m-d') . "\n";
$newDate2 = $newDate1->add($interval);
echo $newDate2->format('Y-m-d') . "\n";
?>Π Π΅Π·ΡΠ»ΡΡΠ°Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΈΠ²Π΅Π΄ΡΠ½Π½ΠΎΠ³ΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠ°:
2001-01-31 2001-03-03