⊗ppMVDFmRrIm 27 of 35 menu

Implementarea routerului în propriul framework MVC

Haideți acum să scriem schița clasei Router în conformitate cu apelurile noastre:

<?php namespace Core; class Router { private $routes; public function getTrack($routes, $uri) { // aici va fi codul } } ?>

În metoda getTrack trebuie să determinăm, care dintre rute corespunde acestui $uri. Pentru aceasta trebuie să parcurgem array-ul cu rute cu un ciclu:

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

Dacă o rută corespunde URI-ului, noi trebuie să obținem din acest URI valorile parametrilor rutei și să returnăm un obiect al clasei Track:

<?php namespace Core; class Router { public function getTrack($routes, $uri) { foreach ($routes as $route) { if (verificarea corespondenței rutei și URI) { $params = ; // trebuie să obținem parametrii din uri return new Track($route->controller, $route->action, $params); } } return new Track('error', 'notFound'); // dacă nici o rută nu se potrivește } } ?>

Copiați schița mea a clasei Router și plasați-o în fișierul /core/Router.php.

Implementați clasa descrisă Router, returnând ca rezultat un obiect al clasei Track. Dacă veți întâmpina dificultăți (ceea ce este foarte probabil), uitați-vă în codul sursă al framework-ului după care ați studiat utilizarea MVC. Acolo în clasa Router veți găsi partea lipsă a implementării și comentariile mele la ea.

Română
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Folosim cookie pentru funcționarea site-ului, analiză și personalizare. Prelucrarea datelor are loc în conformitate cu Politica de confidențialitate.
acceptă toate configurează respinge