DateTime Sınıfının diff Metodu

DateTime sınıfının diff metodu, parametre olarak başka bir DateTime nesnesi alır ve tarihler arasındaki farkı içeren bir DateInterval nesnesi döndürür. Fark çeşitli ölçü birimlerinde (günler, aylar, yıllar vb.) alınabilir.

Sözdizimi

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

Örnek

İki tarih arasındaki farkı hesaplayalım:

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

Kodun çalıştırılma sonucu:

php'+45 days'

Örnek

Farkı ay ve gün cinsinden alalım:

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

Kodun çalıştırılma sonucu:

php'2 months 15 days'

Örnek

Tarihleri saati de dikkate alarak karşılaştırma:

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

Kodun çalıştırılma sonucu:

php'4 hours 30 minutes'

Ayrıca Bakınız

  • date işlevi,
    tarihi ve saati biçimlendirir
  • strtotime işlevi,
    metni zaman damgasına dönüştürür
  • DateInterval sınıfı,
    tarih aralığını temsil eder