DateTime klasės diff metodas
diff metodas iš DateTime klasės priima kaip parametrą kitą DateTime objektą ir grąžina DateInterval objektą, kuriame yra datos skirtumas. Skirtumą galima gauti įvairiais matavimo vienetais (dienos, mėnesiai, metai ir kt.).
Sintaksė
$interval = $datetime1->diff($datetime2);
Pavyzdys
Apskaičiuokime skirtumą tarp dviejų datų:
<?php
$date1 = new DateTime('2023-01-01');
$date2 = new DateTime('2023-02-15');
$interval = $date1->diff($date2);
echo $interval->format('%R%a days');
?>
Kodo vykdymo rezultatas:
'+45 days'
Pavyzdys
Gaukime skirtumą mėnesiais ir dienomis:
<?php
$date1 = new DateTime('2023-03-10');
$date2 = new DateTime('2023-05-25');
$interval = $date1->diff($date2);
echo $interval->format('%m months %d days');
?>
Kodo vykdymo rezultatas:
'2 months 15 days'
Pavyzdys
Datos palyginimas atsižvelgiant į laiką:
<?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');
?>
Kodo vykdymo rezultatas:
'4 hours 30 minutes'
Taip pat žiūrėkite
-
funkciją
date,
kuri formatuoja datą ir laiką -
funkciją
strtotime,
kuri paverčia eilutę į laiko žymę -
klasę
DateInterval,
kuri reprezentuoja datos intervalą