• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Laravel Carbon wskazuje datę inną niż jest w rzeczywistości

Object Storage Arubacloud
+1 głos
392 wizyt
pytanie zadane 28 lipca 2021 w PHP przez mikey Użytkownik (820 p.)

Hej, robię w laravel

whereDate('start_date', '>', Carbon::now()')

aby sprawdzić czy dane aukcja jest nadchodząca czy nie. To działa jednak z kilku godzinnym opóźnieniem.

Sprawdziłem co zwraca Carbon::now() i zwraca wartość z kilku godzinną różnicą. Np jeśli obecnie jest 

2021-07-28 08:52:10

 to carbon zwraca 

2021-07-28 06:52:10

czyli +/i dwie godziny różnicy. Jak to ogarnąć?

komentarz 28 lipca 2021 przez edutomek Dyskutant (8,380 p.)

Tak na szybko: zapewne czas jest zwracany w UTC/GMT, a Ty byś wolał w CEST.
Kwestia konwersji czasu pomiędzy strefami czasowymi.
Nasza, polska, to CEST.
 

komentarz 28 lipca 2021 przez mikey Użytkownik (820 p.)

W połowie dobra odpowiedź  :D 

Zmieniając na 

Carbon::now('CEST')

różnica to 1h

komentarz 28 lipca 2021 przez edutomek Dyskutant (8,380 p.)
Napiszę tak: na 99% jestem pewien, że jest to problem ze strefami czasowymi. Obecnie różnica pomiędzy UTC a CEST wynosi 2h, czyli jak w Polsce mamy godzinę dwunastą, to w UTC mamy dziesiątą.

Natomiast dokładnie gdzie tkwi problem w Twoim przypadku - oto jest pytanie. Może trzeba posprawdzać czas/strefy na serwerze? Względnie serwerach, bo co innego może być serwer PHP, a co innego np. serwer bazy danych, z której są pobierane dane.

1 odpowiedź

+1 głos
odpowiedź 28 lipca 2021 przez CSSoup Mądrala (6,460 p.)

Spróbuj ustawić w config/app.php na:
 

'timezone' => 'Europe/Warsaw'

 

komentarz 29 lipca 2021 przez mikey Użytkownik (820 p.)

Tak, wystarczyło dodać 

'timezone' => 'Europe/Warsaw'

ale nadal mam problem. Porównuję daty

$q->whereDate('start_date', '>', Carbon::now());
$q->whereDate('end_date', '<', Carbon::now());

no i teraz mam problem z tym end_date, jest mniejsze od TERAZ a dalej nie działa tak jak powinno :/

komentarz 29 lipca 2021 przez CSSoup Mądrala (6,460 p.)
Hmmm, próbowałeś pobawić się formatami daty?
komentarz 29 lipca 2021 przez mikey Użytkownik (820 p.)
w sumie, zamieniłem whereDate na where i działa jak marzenie

Podobne pytania

0 głosów
1 odpowiedź 568 wizyt
pytanie zadane 22 kwietnia 2017 w PHP przez niezalogowany
0 głosów
1 odpowiedź 159 wizyt
pytanie zadane 1 lipca 2021 w PHP przez mi-20 Stary wyjadacz (13,190 p.)
0 głosów
1 odpowiedź 145 wizyt
pytanie zadane 24 maja 2017 w PHP przez chmod96 Obywatel (1,380 p.)

92,555 zapytań

141,403 odpowiedzi

319,559 komentarzy

61,940 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...