![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 260 Pomógł: 14 Dołączył: 8.09.2011 Ostrzeżenie: (0%) ![]() ![]() |
Witam. Moze niektorym to pytanie wyda sie głupie i banalne, niemniej jednak jest mi potrzebne.
Z benchmarka mojego wynika ze tworząc system języków, stosując tablicę asocjacyjną zamiast stałych jest 2 -3 razy szybciej. Stosując indeksy cyfrowe jest jeszcze szybciej. Jest to ok. 10-20% czasu wykonywania skryptu. Niemniej jednak, jeśli stworzę tablicę asocjacyjną to za każdym razem w każdej metodzie gdzie chce uzyc jezyka bede musial pisac global $langs. Dostęp do tablicy przez singleton jeszcze bardziej mija sie z celem gdyż wyjdzie jeszcze wolniej niż stałe. Mozna (bez uzycia register_globals) utworzyc sobie tablicę superglobalną jak $_POST? bylaby bardzo wygodna w uzyciu. zamiast pisac: global $langs; new Label($langs['pobieranie_danych']); pisałbym sobie new Label($langs['pobieranie_danych']); |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 260 Pomógł: 14 Dołączył: 8.09.2011 Ostrzeżenie: (0%) ![]() ![]() |
Języka nie bede przekazywal przez parametr bo musialbym przerobic chyba wszystkie procedury.
Faktycznie, moge wrzucic do $_GLOBALS cały język i wtedy nie musze dodawac na poczatku kazdej metody global $lang, tylko bezposrednio odczytam z $_GLOBALS. Dzięki za odpowiedź. Singleton hmmm... w sumie predkosc utworzenia tablicy z językiem będzie taka sama jak przy tabl. asocjacyjnej, predkosc odczytu znacznie wolniejsza, ale przy wyswietleniu strony jest tych odczytow moze z 10-20 gdy przy tworzeniu tablicy jezyka jest do wpisania tych wpisow np 1300, więc małą wydajnosc singletonu przy odczycie mozna pominąć (IMG:style_emoticons/default/smile.gif) Singleton bylby wygodny:D Lang::get('moje_piniądze!'); i w razie czego mozna by go zamienic na tablicę za pomocą znajdz i zamien z Lang::get('(.*?)') na $_GLOBALS['(.*?)']; gdyby okazał się wolny (IMG:style_emoticons/default/biggrin.gif) troszke przyjemniej sie wpisuje singleton niz ten dolar z kapslokiem. dzięki panowie za inspirację. to moze mam jeszcze takie pytanie: Dlaczego taki .htaccess nie przekierowuje mnie na strony z błędami? Options -Indexes php_flag magic_quotes_gpc off ErrorDocument 404 /Pages/error.php?error=404 ErrorDocument 403 /Pages/error.php?error=403 ErrorDocument 405 /Pages/error.php?error=405 ErrorDocument 406 /Pages/error.php?error=406 ErrorDocument 408 /Pages/error.php?error=408 ErrorDocument 409 /Pages/error.php?error=409 ErrorDocument 410 /Pages/error.php?error=410 ErrorDocument 414 /Pages/error.php?error=414 ErrorDocument 415 /Pages/error.php?error=415 ErrorDocument 400 /Pages/error.php?error=400 ErrorDocument 401 /Pages/error.php?error=401 <Files .htaccess> Deny from all </Files> Htaccess jest w tym samym katalogu co katalog /Pages i trzecie pytanie: zrobilem na stronie system wyjątków w sumie nic specjalnego, po prostu jak waliduje dane po stronie modelu (mam MVC) to rzucam wyjątek który pozniej zostaje złapany po stronie widoku i powoduje wyswietlenie komunikatu o błędzie. No i ten komunikat o bledzie zawiera przyciski: powrot, strona główna itd. Problem w tym ze np. jeden widok moze byc wywolany z 3 innych i wtedy nie wiadomo na ktory wrocic w razie wystapienia błędu. Przykład: widok default -> widok wszystkich poradników -> widok dodawania -> widok odbioru formularza -> błąd -> wróć do? widok default -> widok listy poradników gracza -> widok dodawania ->widok odbioru formularza -> błąd -> wróć do ? w tym momencie widok odbioru formularza nie wie na jaki widok ma kierowac przycisk powrót (chodzi o to by przerzucilo uzytkownika tam gdzie był). generalnie jakby zrobic przekierowanie na poprzedni widok /strone w razie wystapienia bledu automatycznie to zaoszczedzilbym multum pisania. myslalem o trzymaniu historii otwieranych stron w cookies, ale jesli uzytkownik otworzy strone w kilku kartach to bedzie mu głupio skakało pomiedzy stronami. musiałbym dołączać jakieś ID do strony. Tylko jakie? W linku get nieelegancko. W post nie ma jak bo nie wszystkie przyciski to submit. Z javascriptu nie chce korzystac w kwestiach sterowania stroną. w takim razie moze przypisac kazdemu widokowi jakis hash i budowac w cookies drzewo rozgalezien ktory hash wywołał który i na podstawie jego wracać? ale to tez bez sensu bo beda sie powtarzaly. Moze da sie te powroty jakos prosciej zrobic? rozwiazanie z dodawaniem do kazdego linku parametru powrot='obecna_strona' nie podoba mi sie za bardzo |
|
|
![]() ![]() |
![]() |
Aktualny czas: 5.10.2025 - 18:27 |