Jak korzystać z funkcji date_offset_get() w PHP

Jak Korzystac Z Funkcji Date Offset Get W Php



The date_offset_get() to funkcja klasy DateTime w PHP używana do pobierania przesunięcia strefy czasowej w sekundach dla danego obiektu DateTime. Pozwala programistom uzyskać różnicę między czasem w określonej strefie czasowej a UTC (Coordinated Universal Time).

Składnia

Składnia date_offset_get() funkcja jest następująca:

int date_offset_get ( DataGodzina $obiekt )

Parametrem funkcji jest:







$obiekt: Obiekt DateTime, z którego ma zostać pobrane przesunięcie strefy czasowej.



Wartość zwracana

The date_offset_get() Funkcja zwraca przesunięcie strefy czasowej w sekundach jako liczbę całkowitą.



Jak korzystać z funkcji date_offset_get() w PHP

Oto przykład użycia PHP date_offset_get() funkcja pobierania przesunięcia UTC dla bieżącej strefy czasowej:







$data = nowy DataGodzina ( 'Teraz' ) ;

$przesunięcie = date_offset_get ( $data ) ;

Echo 'Zrównoważyć: ' . $przesunięcie ;

?>

W tym przykładzie tworzymy nowy obiekt DateTime ustawiony na bieżącą datę i godzinę za pomocą metody 'Teraz' strunowy. Następnie przekazujemy ten obiekt do date_offset_get() funkcja, która zwraca przesunięcie czasu UTC w sekundach. Na koniec drukujemy przesunięcie czasu UTC za pomocą instrukcji echo.



Notatka: Przesunięcie wynosi zero, ponieważ czas nie jest ustawiony dla tego przypadku.

Uzyskanie przesunięcia dla określonej daty i godziny

PHP date_offset_get() Metoda może być również wykorzystana do uzyskania przesunięcia UTC dla określonej daty i godziny. Aby to zrobić, musisz utworzyć obiekt DateTime z żądaną datą i godziną i przekazać go do funkcji. Oto przykład:



$data = nowy DataGodzina ( „2020-12-31 23:59:59” , nowy DataCzasStrefa ( „Ameryka/Nowy_Jork” ) ) ;

$przesunięcie = date_offset_get ( $data ) ;

Echo 'Zrównoważyć: ' . $przesunięcie ;

?>

W tym przykładzie tworzymy nowy obiekt DateTime z datą i godziną ustawioną na 31 grudnia 2020 r. o godzinie 23:59:59 w strefie czasowej America/New_York. Następnie przekazujemy ten obiekt do date_offset_get() funkcja, która zwraca przesunięcie czasu UTC w sekundach. Na koniec drukujemy przesunięcie czasu UTC za pomocą instrukcji echo.

Notatka: W powyższym kodzie strefa czasowa jest ustawiona na Ameryka/Nowy Jork czyli 5 godzin za UTC. Dlatego powraca -18000 jako przesunięcie, które wynosi 5 godzin w sekundach.

Konwertowanie daty i godziny na inną strefę czasową

Inny sposób użycia PHP date_offset_get() funkcją jest konwersja obiektu daty i godziny na inną strefę czasową. Aby to zrobić, musisz utworzyć nowy DataCzasStrefa obiekt z żądaną strefą czasową i ustaw ją jako właściwość obiektu DateTime za pomocą metody ustawić datę() I ustaw czas() metody. Oto przykład:



$data = nowy DataGodzina ( 'Teraz' , nowy DataCzasStrefa ( „Ameryka/Nowy_Jork” ) ) ;

$data -> ustaw strefę czasową ( nowy DataCzasStrefa ( „Europa/Londyn” ) ) ;

$przesunięcie = date_offset_get ( $data ) ;

Echo 'Zrównoważyć: ' . $przesunięcie ;

?>

W tym przykładzie bieżąca data i godzina są tworzone jako nowy obiekt DateTime w strefie czasowej America/New_York. Następnie ustawiliśmy strefę czasową na Europę/Londyn za pomocą setTimeZone() metoda. Na koniec drukujemy datę i godzinę za pomocą format() metoda, która formatuje datę i godzinę na ciąg na podstawie określonego formatu.

Notatka: W powyższym kodzie strefa czasowa jest ustawiona na Ameryka/Nowy Jork czyli 5 godzin za UTC. Następnie ustawiamy strefę czasową na Europa/Londyn czyli 1 godzinę przed czasem UTC. Dlatego zwraca 3600 jako przesunięcie, które wynosi 1 godzinę w sekundach.

Wniosek

PHP date_offset_get() jest przydatną funkcją dla twórców stron internetowych do wyodrębniania przesunięcia strefy czasowej określonej daty i godziny. W połączeniu z innymi funkcjami daty i czasu można go użyć do obliczenia różnicy czasu między dwiema strefami czasowymi lub odpowiedniego dostosowania znacznika czasu. Zrozumienie, jak skutecznie korzystać z tej funkcji, może znacznie zwiększyć funkcjonalność i możliwości dowolnej aplikacji internetowej.