[SF][SF2][Symfony2] Porównanie dat w szablonie TWIG |
[SF][SF2][Symfony2] Porównanie dat w szablonie TWIG |
27.01.2018, 22:34:09
Post
#1
|
|
Grupa: Zarejestrowani Postów: 493 Pomógł: 2 Dołączył: 15.07.2011 Skąd: Katowice Ostrzeżenie: (0%) |
Próbuję w szablonie sprawdzić, która z dat jest większa i wychodzą mi dziwne rzeczy.
Nie jestem pewien czy TWIG porównuje sobie faktycznie obiekty dat czy stringi. Mam taki kod w TWIGU:
zweryfikowałem sobie dumpem co wyświetlają poszczególne części kodu i tak:
wyniki powyższego: "27-01-2018" false "1" "05-02-2018" "11-02-2018" false false jakim cudem zmienna nextMatchday = false ? data obecna jest większa od dat 5 lutego i 11 lutego ? Ten post edytował damianooo 27.01.2018, 22:38:58 |
|
|
27.01.2018, 23:10:51
Post
#2
|
|
Grupa: Zarejestrowani Postów: 428 Pomógł: 77 Dołączył: 10.07.2011 Skąd: Warszawa Ostrzeżenie: (0%) |
A zerknij tutaj
Czy aby na pewno obie wartości są instancją \DateTime? Na przyszłość polecam napisać ArgumentResolver + jakiś model, bo przecież możesz tego używać w wielu miejscach, a controller może "otrzymać" już obrobione i "gotowe" dane do dalszego procesowania. -- EDIT Poprawiłem sandbox, co żebyś widział różnicę... Ten post edytował kpt_lucek 27.01.2018, 23:15:24 -------------------- Cytat There is a Bundle for that Lukas Kahwe Smith - October 31th, 2014 |
|
|
27.01.2018, 23:16:55
Post
#3
|
|
Grupa: Zarejestrowani Postów: 493 Pomógł: 2 Dołączył: 15.07.2011 Skąd: Katowice Ostrzeżenie: (0%) |
no raczej tak
W entity mam tak:
Metoda jaką w Twigu pobieram daty do korzystając z klasy AppExtension wygląda tak:
|
|
|
27.01.2018, 23:22:20
Post
#4
|
|
Grupa: Zarejestrowani Postów: 428 Pomógł: 77 Dołączył: 10.07.2011 Skąd: Warszawa Ostrzeżenie: (0%) |
-------------------- Cytat There is a Bundle for that Lukas Kahwe Smith - October 31th, 2014 |
|
|
27.01.2018, 23:25:17
Post
#5
|
|
Grupa: Zarejestrowani Postów: 493 Pomógł: 2 Dołączył: 15.07.2011 Skąd: Katowice Ostrzeżenie: (0%) |
|
|
|
27.01.2018, 23:26:21
Post
#6
|
|
Grupa: Zarejestrowani Postów: 428 Pomógł: 77 Dołączył: 10.07.2011 Skąd: Warszawa Ostrzeżenie: (0%) |
A teraz zobacz co wypluwa każdy z w/w poprzez dump'a, a potem popatrz na moją pierwszą odpowiedź (pierwszy link). -------------------- Cytat There is a Bundle for that Lukas Kahwe Smith - October 31th, 2014 |
|
|
27.01.2018, 23:32:59
Post
#7
|
|
Grupa: Zarejestrowani Postów: 493 Pomógł: 2 Dołączył: 15.07.2011 Skąd: Katowice Ostrzeżenie: (0%) |
poczekaj bo się pogubiłem.
Mój obecny kod wypluwa to co napisałem w pierwszym poście a więc to: "27-01-2018" false "1" "05-02-2018" "11-02-2018" false false Twój link z pierwszego postu pokazuje wyniki przed konwersją i po konwersji w PHPie i widzę że jak porównuje stringi to jest FLASE a jak daty to prawidłowo a więc TRUE . Sugerujesz zatem że w TWIG mam stringi i dlatego mi to źle działa i że powinienem to skonwertować sobie w PHPie w tej funkcji w klasie AppExtension ? |
|
|
27.01.2018, 23:34:28
Post
#8
|
|
Grupa: Zarejestrowani Postów: 428 Pomógł: 77 Dołączył: 10.07.2011 Skąd: Warszawa Ostrzeżenie: (0%) |
Nic ani nikt nie broni Ci operować na dacie w Twig'u, ale Ty w owym przypadku operujesz na stringach, bo formatujesz datę używając |date('d-m-y')
-------------------- Cytat There is a Bundle for that Lukas Kahwe Smith - October 31th, 2014 |
|
|
27.01.2018, 23:41:21
Post
#9
|
|
Grupa: Zarejestrowani Postów: 493 Pomógł: 2 Dołączył: 15.07.2011 Skąd: Katowice Ostrzeżenie: (0%) |
ok już rozumiem .. usunąłem te filtry i działa
"now" true "1" DateTime {#452 ▼ +"date": "2018-02-05 00:00:00.000000" +"timezone_type": 3 +"timezone": "Europe/Berlin" } DateTime {#453 ▼ +"date": "2018-02-11 00:00:00.000000" +"timezone_type": 3 +"timezone": "Europe/Berlin" } true true dzięki ! |
|
|
Wersja Lo-Fi | Aktualny czas: 24.04.2024 - 02:38 |