⊗ppMVDFmRrIm 27 of 35 menu

Implementação de roteador em seu próprio framework MVC

Vamos agora escrever o esboço da classe Router de acordo com nossas chamadas:

<?php namespace Core; class Router { private $routes; public function getTrack($routes, $uri) { // código será adicionado aqui } } ?>

No método getTrack, devemos determinar qual das rotas corresponde ao $uri fornecido. Para isso, precisamos percorrer nosso array de rotas com um loop:

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

Se alguma rota corresponder ao URI, nós devemos obter desse URI os valores dos parâmetros da rota e retornar um objeto da classe Track:

<?php namespace Core; class Router { public function getTrack($routes, $uri) { foreach ($routes as $route) { if (verificação de correspondência entre rota e URI) { $params = ; // precisa obter os parâmetros do uri return new Track($route->controller, $route->action, $params); } } return new Track('error', 'notFound'); // se nenhuma rota corresponder } } ?>

Copie meu esboço da classe Router e coloque-o no arquivo /core/Router.php.

Implemente a classe Router descrita, retornando como resultado um objeto da classe Track. Se você tiver dificuldades (o que é bastante provável), consulte o código-fonte do framework pelo qual você estudou o uso do MVC. Lá, na classe Router, você encontrará a parte faltante da implementação e meus comentários sobre ela.

Português
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Nós usamos cookies para o funcionamento do site, análises e personalização. O processamento de dados é realizado de acordo com a Política de Privacidade.
aceitar todas configurar rejeitar