Metoden diff i klassen DateTime

Metoden diff i klassen DateTime tar ett annat DateTime-objekt som parameter och returnerar ett DateInterval-objekt som innehåller skillnaden mellan datumen. Skillnaden kan erhållas i olika måttenheter (dagar, månader, år etc.).

Syntax

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

Exempel

Låt oss beräkna skillnaden mellan två datum:

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

Kodresultat:

php'+45 days'

Exempel

Låt oss få skillnaden i månader och dagar:

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

Kodresultat:

php'2 months 15 days'

Exempel

Jämförelse av datum med hänsyn till tid:

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

Kodresultat:

php'4 hours 30 minutes'

Se även

  • funktionen date,
    som formaterar datum och tid
  • funktionen strtotime,
    som konverterar en sträng till en tidsstämpel
  • klassen DateInterval,
    som representerar ett datumintervall