Metoda diff e klasës DateTime

Metoda diff e klasës DateTime merr si parametër një objekt tjetër DateTime dhe kthen një objekt DateInterval, që përmban ndryshimin midis datave. Ndryshimi mund të merret në njësi të ndryshme matëse (ditë, muaj, vite etj.).

Sintaksa

php$interval = $datetime1->diff($datetime2);

Shembull

Le të llogarisim ndryshimin midis dy datave:

php<?php
  $date1 = new DateTime('2023-01-01');
  $date2 = new DateTime('2023-02-15');
  $interval = $date1->diff($date2);
  echo $interval->format('%R%a days');
?>

Rezultati i ekzekutimit të kodit:

php'+45 days'

Shembull

Le të marrim ndryshimin në muaj dhe ditë:

php<?php
  $date1 = new DateTime('2023-03-10');
  $date2 = new DateTime('2023-05-25');
  $interval = $date1->diff($date2);
  echo $interval->format('%m months %d days');
?>

Rezultati i ekzekutimit të kodit:

php'2 months 15 days'

Shembull

Krahasimi i datave duke marrë parasysh kohën:

php<?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');
?>

Rezultati i ekzekutimit të kodit:

php'4 hours 30 minutes'

Shihni gjithashtu

  • funksionin date,
    i cili formaton datën dhe kohën
  • funksionin strtotime,
    i cili kthen një varg në timestamp
  • klasën DateInterval,
    e cila përfaqëson një interval kohor