• 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

Aruba Cloud VPS - 50% taniej przez 3 miesiące!
+1 głos
606 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ź 715 wizyt
pytanie zadane 22 kwietnia 2017 w PHP przez niezalogowany
0 głosów
1 odpowiedź 180 wizyt
pytanie zadane 1 lipca 2021 w PHP przez mi-20 Stary wyjadacz (13,250 p.)
0 głosów
1 odpowiedź 183 wizyt
pytanie zadane 24 maja 2017 w PHP przez chmod96 Obywatel (1,380 p.)

93,176 zapytań

142,187 odpowiedzi

321,982 komentarzy

62,508 pasjonatów

Advent of Code 2024

Top 15 użytkowników

  1. 1637p. - dia-Chann
  2. 1614p. - Łukasz Piwowar
  3. 1599p. - CC PL
  4. 1597p. - Łukasz Eckert
  5. 1572p. - Tomasz Bielak
  6. 1545p. - Michal Drewniak
  7. 1537p. - Łukasz Siedlecki
  8. 1531p. - rucin93
  9. 1509p. - rafalszastok
  10. 1506p. - Marcin Putra
  11. 1380p. - Adrian Wieprzkowicz
  12. 1356p. - ssynowiec
  13. 1341p. - Mikbac
  14. 1169p. - Grzegorz Aleksander Klementowski
  15. 1155p. - Piotr Aleksandrowicz
Szczegóły i pełne wyniki

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

Wprowadzenie do ITsec, tom 1 Wprowadzenie do ITsec, tom 2

Można już zamawiać dwa tomy książek o ITsec pt. "Wprowadzenie do bezpieczeństwa IT" - mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy aż 15% zniżki! Dziękujemy ekipie Sekuraka za fajny rabat dla naszej Społeczności!

...