![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 98 Pomógł: 0 Dołączył: 5.02.2007 Ostrzeżenie: (0%) ![]() ![]() |
index.php
plik lang.class.php
Ten post edytował szczypior 12.08.2016, 13:00:46 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 428 Pomógł: 77 Dołączył: 10.07.2011 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Możesz coś podobnego przekminić, wydziel logikę odpowiedzialną za "sprawdzenie" języka gdzieś na zewnątrz, dispatchuj event na zmianę języka. Opcji są miliony Cytat gdy użytkownik ma ciasteczko to odczytujemy zapisany w nim język i zapisujemy dodatkowo do zmiennej sesyjnej Wywal to do osobnego obiektu, który w razie potrzeby odpali na klasie Lang, z założenia Lang nie musi wiedzieć kto, skąd i po co zmienia język, ma to tylko ogarnąć po swojej stronie i tyle (plus ewentualnie powiadomić jakimś eventem że zmiana miała miejsce) Cytat gdy mamy zmienną, to znaczy że użytkownik chce zmienić obecny język Może abstrakcja, ale... co jeżeli pewna część kontentu będzie w innym języku? W teorii muszę utworzyć nową instancję klasy Lang po to, żeby w tym momencie ten język zmienić? Cytat Może potraktuj tłumaczenia (zakładam strukturę key=>value) raczej jako config? W sensie *.ini, *.yml, xml itd. Dodatkowo, możesz napisać sobie coś w rodzaju Translatora, co za tym idzie... mówić mu aby tłumaczył klucze na uprzednio załadowanej konfiguracji języka. Do tego musisz oczywiście pamiętać o fallback'u - w momencie gdy dane tłumaczenie (klucz) nie istnieje. P.S. taki troche Symfony-way Ten post edytował kpt_lucek 13.08.2016, 02:55:57 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 14.10.2025 - 13:57 |