Slik bruker du funksjonen date_offset_get() i PHP

Slik Bruker Du Funksjonen Date Offset Get I Php



De date_offset_get() er en DateTime-klassefunksjon i PHP som brukes til å hente tidssoneforskyvningen i sekunder for et gitt DateTime-objekt. Det lar utviklere få forskjellen mellom tiden i den angitte tidssonen og UTC (Coordinated Universal Time).

Syntaks

Syntaksen til date_offset_get() funksjonen er som følger:

int date_offset_get ( Dato tid $objekt )

Parameteren til funksjonen er:







$object: DateTime-objektet som tidssoneforskyvningen skal hentes fra.



Returverdi

De date_offset_get() funksjonen returnerer tidssoneforskyvningen i sekunder som et heltall.



Slik bruker du funksjonen date_offset_get() i PHP

Her er et eksempel på hvordan du bruker PHP date_offset_get() funksjon for å hente UTC-forskyvningen for gjeldende tidssone:







$date = ny Dato tid ( 'nå' ) ;

$offset = date_offset_get ( $date ) ;

ekko 'Offset: ' . $offset ;

?>

I dette eksemplet lager vi et nytt DateTime-objekt satt til gjeldende dato og klokkeslett ved hjelp av 'nå' streng. Vi sender deretter dette objektet til date_offset_get() funksjon, som returnerer UTC-forskyvningen på sekunder. Til slutt skriver vi ut UTC-offset ved å bruke ekkosetningen.



Merk: Forskyvningen er null fordi tiden ikke er satt for dette tilfellet.

Forskyvning for en bestemt dato og klokkeslett

PHP date_offset_get() metoden kan også brukes for å få UTC-forskyvningen for en bestemt dato og klokkeslett. For å gjøre dette må du opprette et DateTime-objekt med ønsket dato og klokkeslett og sende det til funksjonen. Her er et eksempel:



$date = ny Dato tid ( '2020-12-31 23:59:59' , ny DatoTidssone ( 'Amerika/New_York' ) ) ;

$offset = date_offset_get ( $date ) ;

ekko 'Offset: ' . $offset ;

?>

I dette eksemplet oppretter vi et nytt DateTime-objekt med dato og klokkeslett satt til 31. desember 2020, klokken 23:59:59 i tidssonen America/New_York. Vi sender deretter dette objektet til date_offset_get() funksjon, som returnerer UTC-forskyvningen på sekunder. Til slutt skriver vi ut UTC-offset ved å bruke ekkosetningen.

Merk: I koden ovenfor er tidssonen satt til Amerika/New_York som er 5 timer bak UTC. Derfor kommer den tilbake -18 000 som offset som er 5 timer i sekunder.

Konvertering av dato og klokkeslett til en annen tidssone

En annen måte å bruke PHP på date_offset_get() funksjonen er å konvertere et dato- og tidsobjekt til en annen tidssone. For å gjøre dette må du opprette en ny DatoTidssone objekt med ønsket tidssone og angi det som egenskapen til DateTime-objektet ditt ved å bruke setDate() og setTime() metoder. Her er et eksempel:



$date = ny Dato tid ( 'nå' , ny DatoTidssone ( 'Amerika/New_York' ) ) ;

$date -> setTimeZone ( ny DatoTidssone ( 'Europa/London' ) ) ;

$offset = date_offset_get ( $date ) ;

ekko 'Offset: ' . $offset ;

?>

I dette eksemplet opprettes gjeldende dato og klokkeslett som et nytt DateTime-objekt i tidssonen America/New_York. Vi stiller deretter tidssonen til Europa/London ved å bruke setTimeZone() metode. Til slutt skriver vi ut dato og klokkeslett ved hjelp av format() metode, som formaterer dato og klokkeslett til en streng basert på det angitte formatet.

Merk: I koden ovenfor er tidssonen satt til Amerika/New_York som er 5 timer bak UTC. Vi setter så tidssonen til Europa/London som er 1 time foran UTC. Derfor returnerer den 3600 som offset, som er 1 time i sekunder.

Konklusjon

PHP date_offset_get() funksjon er en nyttig funksjon for webutviklere for å trekke ut tidssonens forskyvning av en spesifisert dato og klokkeslett. I kombinasjon med andre dato- og klokkeslettfunksjoner kan den brukes til å beregne tidsforskjellen mellom to tidssoner eller justere tidsstemplet deretter. Å forstå hvordan du bruker denne funksjonen effektivt kan forbedre funksjonaliteten og egenskapene til enhver nettbasert applikasjon betydelig.