⊗ppMVDFmRrIm 27 of 35 menu

Implementacja routera we własnym frameworku MVC

Teraz napiszmy szablon klasy Router zgodnie z naszymi wywołaniami:

<?php namespace Core; class Router { private $routes; public function getTrack($routes, $uri) { // tutaj będzie kod } } ?>

W metodzie getTrack musimy określić, która z tras odpowiada podanemu $uri. Aby to zrobić, należy przejść pętlą przez naszą tablicę z trasami:

<?php namespace Core; class Router { public function getTrack($routes, $uri) { foreach ($routes as $route) { // sprawdzenie $uri i $route } } } ?>

Jeśli jakaś trasa odpowiada URI, powinniśmy pobrać z tego URI wartości parametrów trasy i zwrócić obiekt klasy Track:

<?php namespace Core; class Router { public function getTrack($routes, $uri) { foreach ($routes as $route) { if (sprawdzenie zgodności trasy i URI) { $params = ; // należy pobrać parametry z uri return new Track($route->controller, $route->action, $params); } } return new Track('error', 'notFound'); // jeśli żadna trasa nie pasuje } } ?>

Skopiuj mój szablon klasy Router i umieść go w pliku /core/Router.php.

Zaimplementuj opisaną klasę Router, zwracającą jako wynik obiekt klasy Track. Jeśli napotkasz trudności (co jest bardzo prawdopodobne), zajrzyj do kodu źródłowego frameworka, na podstawie którego uczyłeś się używać MVC. Tam w klasie Router znajdziesz brakującą część implementacji i moje komentarze do niej.

Polski
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wykorzystujemy pliki cookie do działania strony, analizy i personalizacji. Przetwarzanie danych odbywa się zgodnie z Polityką prywatności.
zaakceptuj wszystkie dostosuj odrzuć