DateTime klases diff metode

diff metode no DateTime klases pieņem kā parametru citu DateTime objektu un atgriež DateInterval objektu, kas satur datumu starpību. Starpību var iegūt dažādās mērvienībās (dienas, mēneši, gadi utt.).

Sintakse

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

Piemērs

Aprēķināsim starpību starp diviem datumiem:

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

Koda izpildes rezultāts:

php'+45 days'

Piemērs

Iegūsim starpību mēnešos un dienās:

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

Koda izpildes rezultāts:

php'2 months 15 days'

Piemērs

Datumu salīdzināšana, ņemot vērā laiku:

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

Koda izpildes rezultāts:

php'4 hours 30 minutes'

Skatiet arī

  • funkciju date,
    kas formatē datumu un laiku
  • funkciju strtotime,
    kas pārveido virkni laika spiedolā
  • klasi DateInterval,
    kas reprezentē datumu intervālu