![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 101 Pomógł: 11 Dołączył: 2.02.2005 Ostrzeżenie: (0%) ![]() ![]() |
Witam
Chciałbym zapytać jakie Waszym zdaniem rozwiązanie byłoby najlepsze : 1. klasa FrontController sprawdza $_SERVER['QUERY_STRING'] i $_SERVER['PATH_INFO'] i w zależności od tego które wywołanie wystąpiło tworzy obiekt jednej z klas -> RouterStandard lub RouterNice 2. Klasa Request zajmie się "rozpoznaniem" a FrontController pobierze sobie nazwę -> $this->request->getRouterClassName(); 3. Stworzyć jedną klasę Router (niczym w CodeIgniter) która sama sobie sprawdzi i uruchomi jedną ze swoich metod (albo do standarowych urli albo do nice) 4. Utworzyć klasę Router która tylko sprawdzi $_SERVER['QUERY_STRING'] i $_SERVER['PATH_INFO'] i utworzy obiekt bądż RouterStandard bądź RouterNice. 5. Może jeszcze inne rozwiązanie ? Z góry dziękuję za wszelkie odpowiedzi. Pozdrawiam |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 101 Pomógł: 11 Dołączył: 2.02.2005 Ostrzeżenie: (0%) ![]() ![]() |
Cytat To my rozmawiamy o Routerze, czy o Request? Oczywiście o Routerze, przepraszam ale tak mi się wstawiło, metoda setRouter wygląda tak samo.Cytat Jezeli we front kontrolerze rejestrujesz request, to troche mija sie to z celem. Przepraszam ale nie rozumiem o co Ci chodzi ?Gdzie potrzebujesz robisz "new Request;". Czyżbym tworzył obiekty -> Request, Response, Router w nie właściwym miejscu ? FrontController nie jest od tego ? Poniżej kawałek z Zend_Controller_Front
Właśnie we FrontControllerze tworzą obiekty tych klas. Pozdrawiam |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 338 Pomógł: 2 Dołączył: 4.03.2006 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Czyżbym tworzył obiekty -> Request, Response, Router w nie właściwym miejscu ? FrontController nie jest od tego ? Jest, chociaz jak kto woli (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) Chodzilo mi o to, ze skoro Request operuje na $_POST, $_GET itd, to nie trzeba na dzien dobry tworzyc jego obiektu we front kontrolerze i trzymac go na wszelki wypadek. Rownie dobrze mozesz utworzyc obiekt requesta w akcji, kiedy bedzie Ci tak na prawde potrzebny. Z kolei router mozesz utworzyc i trzymac we front kontrolerze, bo zawsze zostaje uruchamiany, a czasem zachodzi potrzeba skorzystania z niego w dalszej czesci aplikacji (np do wygenerowania adresu url). |
|
|
![]() ![]() |
![]() |
Aktualny czas: 15.10.2025 - 09:05 |