Metoda diff třídy DateTime
Metoda diff třídy DateTime přijímá jako parametr jiný objekt DateTime a vrací objekt DateInterval, obsahující rozdíl mezi daty. Rozdíl lze získat v různých jednotkách měření (dny, měsíce, roky atd.).
Syntaxe
$interval = $datetime1->diff($datetime2);
Příklad
Vypočítáme rozdíl mezi dvěma daty:
<?php
$date1 = new DateTime('2023-01-01');
$date2 = new DateTime('2023-02-15');
$interval = $date1->diff($date2);
echo $interval->format('%R%a days');
?>
Výsledek provedení kódu:
'+45 days'
Příklad
Získáme rozdíl v měsících a dnech:
<?php
$date1 = new DateTime('2023-03-10');
$date2 = new DateTime('2023-05-25');
$interval = $date1->diff($date2);
echo $interval->format('%m months %d days');
?>
Výsledek provedení kódu:
'2 months 15 days'
Příklad
Porovnání dat s ohledem na čas:
<?php
$date1 = new DateTime('2023-01-01 10:00:00');
$date2 = new DateTime('2023-01-01 14:30:00');
$interval = $date1->diff($date2);
echo $interval->format('%h hours %i minutes');
?>
Výsledek provedení kódu:
'4 hours 30 minutes'
Viz také
-
funkci
date,
která formátuje datum a čas -
funkci
strtotime,
která převádí řetězec na časové razítko -
třídu
DateInterval,
která představuje interval dat