Hva er PHP DateDiff funksjon?

PHP versjon 5.3 inkluderer en Datetime klasse for lagring, manipulering og utføre beregninger med datoer og en DateInterval klasse for lagring av intervallet mellom to datoer. Den Dato og tid klasse omfatter flere metoder, for eksempel Datetime :: diff metode, som returnerer forskjellen mellom to Datetime objekter som et DateInterval objekt. Den date_diff funksjonen er en prosessuell stil alias av Datetime :: diff metode som kan brukes til å beregne forskjellen mellom to datoer.

Datetime Class

Datetime klasse i PHP er en konstruksjon som representerer en dato og klokkeslett. Det inkluderer flere metoder som lar deg manipulere datoer og utføre datoberegninger. Datetime klassen lagrer en dato internt som antall sekunder siden Unix Epoch, som er den første januar 1970, ved 00:00:00 GMT. Opprett en ny Datetime objekt med "ny" og Datetime konstruere eller prosedyre med date_create funksjon. For eksempel:

<? Php

$ Fest = new Datetime ( '1999-12-31');

$ Same_party = date_create ( "1999-12-31");

?>

Datetime :: diff

Datetime :: diff metoden gjør det mulig å beregne forskjellen mellom to Datetime stedene. For eksempel vil beregne antall dager du har vært i live, skriver en funksjon for å beregne forskjellen mellom dagens dato og din fødselsdato:

<? Php

fungere daysAlive ($ fødsels) {

$ I dag = new Datetime ( "nå");

$ Bursdag = new Datetime ($ fødsels);

$ DaysAlive = $ bursdag> diff ($ i dag);

returnere $ daysAlive-> format ( "% a dager ');

}

?>

date_diff Funksjon

Den date_diff funksjonen er en prosessuell-stil alias av Datetime :: diff metode. Bruk date_create funksjon for å skape en dato- objekt og bruk date_diff funksjon å beregne intervallet mellom to datoer. For eksempel, den prosessuelle stil funksjon som beregner antall dager du har vært i live er:

<? Php

funksjon days_alive ($ Birth_Date) {

$ I dag = date_create ( "nå");

$ Bursdag = date_create ($ Birth_Date);

$ Days_alive = date_diff ($ bursdag, $ i dag);

tilbake date_interval_format ($ days_alive, "% a days");

}

?>

DateInterval Class

Når du bruker Datetime :: diff metode eller date_diff funksjon, er resultatet representert som et objekt av DateInterval klassen. Denne klassen lagrer intervallet mellom to datoer som en fast periode i år, måneder, dager, timer og sekunder. Den objektorientert DateInterval :: format metoden eller prosessuelle stil date_interval_format funksjonen lar deg vise dato intervall i en eller flere perioder. For eksempel kan du vise et datointervall som antall dager eller som en rekke år og dager:

<? Php

$ FIRST_DATE = date_create ( "2011-09-05");

$ Second_date = date_create ( "2020-06-01");

$ Diff = date_diff ($ second_date, $ FIRST_DATE);

echo date_interval_format ($ diff, "% a days");

echo date_interval_format ($ diff, «% y år og% d dager");

?>