DateTime-luokan diff-metodi
DateTime -luokan diff -metodi ottaa parametrina toisen DateTime -objektin ja palauttaa DateInterval -objektin, joka sisältää päivämäärien välisen eron. Ero voidaan saada eri mittayksiköissä (päivät, kuukaudet, vuodet jne.).
Syntaksi
$interval = $datetime1->diff($datetime2);
Esimerkki
Lasketaan kahden päivämäärän välinen ero:
<?php
$date1 = new DateTime('2023-01-01');
$date2 = new DateTime('2023-02-15');
$interval = $date1->diff($date2);
echo $interval->format('%R%a days');
?>
Koodin suorituksen tulos:
'+45 days'
Esimerkki
Saadaan ero kuukausina ja päivinä:
<?php
$date1 = new DateTime('2023-03-10');
$date2 = new DateTime('2023-05-25');
$interval = $date1->diff($date2);
echo $interval->format('%m months %d days');
?>
Koodin suorituksen tulos:
'2 months 15 days'
Esimerkki
Päivämäärien vertailu ottaen huomioon ajan:
<?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');
?>
Koodin suorituksen tulos:
'4 hours 30 minutes'
Katso myös
-
funktion
date,
joka muotoilee päivämäärän ja ajan -
funktion
strtotime,
joka muuntaa merkkijonon aikaleimaksi -
luokan
DateInterval,
joka edustaa päivämäärien välistä aikaväliä