Metoden diff i DateTime-klassen
Metoden diff i klassen DateTime tar et annet DateTime-objekt som parameter og returnerer et DateInterval-objekt som inneholder forskjellen mellom datoene. Forskjellen kan hentes i forskjellige måleenheter (dager, måneder, år osv.).
Syntaks
$interval = $datetime1->diff($datetime2);
Eksempel
La oss beregne forskjellen mellom to datoer:
<?php
$date1 = new DateTime('2023-01-01');
$date2 = new DateTime('2023-02-15');
$interval = $date1->diff($date2);
echo $interval->format('%R%a days');
?>
Resultat av kjøring av koden:
'+45 days'
Eksempel
La oss hente forskjellen i måneder og dager:
<?php
$date1 = new DateTime('2023-03-10');
$date2 = new DateTime('2023-05-25');
$interval = $date1->diff($date2);
echo $interval->format('%m months %d days');
?>
Resultat av kjøring av koden:
'2 months 15 days'
Eksempel
Sammenligning av datoer med hensyn til tid:
<?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');
?>
Resultat av kjøring av koden:
'4 hours 30 minutes'
Se også
-
funksjonen
date,
som formaterer dato og tid -
funksjonen
strtotime,
som konverterer en streng til et tidsstempel -
klassen
DateInterval,
som representerer et datointervall