DateTime դասի diff մեթոդ

DateTime դասի diff մեթոդը պարամետրով ընդունում է մեկ այլ DateTime օբյեկտ և վերադարձնում է DateInterval օբյեկտ, որը պարունակում է ամսաթվերի տարբերությունը: Տարբերությունը կարելի է ստանալ տարբեր չափման միավորներով (օրեր, ամիսներ, տարիներ և այլն):

Շարահյուսություն

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

Օրինակ

Հաշվարկենք երկու ամսաթվերի տարբերությունը.

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

Կոդի կատարման արդյունք.

php'+45 days'

Օրինակ

Ստացենք տարբերությունը ամիսներով և օրերով.

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

Կոդի կատարման արդյունք.

php'2 months 15 days'

Օրինակ

Ամսաթվերի համեմատություն ժամանակը հաշվի առնելով.

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

Կոդի կատարման արդյունք.

php'4 hours 30 minutes'

Տես նաև

  • date ֆունկցիան,
    որը ֆորմատում է ամսաթիվը և ժամանակը
  • strtotime ֆունկցիան,
    որը տողը վերածում է ժամանակի նշագծի
  • DateInterval դասը,
    որը ներկայացնում է ամսաթվերի միջակայք