Metode diff Kelas DateTime

Metode diff dari kelas DateTime menerima objek DateTime lain sebagai parameternya dan mengembalikan objek DateInterval yang berisi selisih antara tanggal-tanggal tersebut. Selisihnya bisa didapatkan dalam berbagai satuan ukur (hari, bulan, tahun, dll.).

Sintaks

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

Contoh

Mari hitung selisih antara dua tanggal:

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

Hasil eksekusi kode:

php'+45 days'

Contoh

Mari dapatkan selisih dalam bulan dan hari:

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

Hasil eksekusi kode:

php'2 months 15 days'

Contoh

Membandingkan tanggal dengan mempertimbangkan waktu:

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

Hasil eksekusi kode:

php'4 hours 30 minutes'

Lihat juga

  • fungsi date,
    yang memformat tanggal dan waktu
  • fungsi strtotime,
    yang mengubah string menjadi timestamp
  • kelas DateInterval,
    yang merepresentasikan interval tanggal