⊗ppMVDFmRrIm 27 of 35 menu

Maršrutizatoriaus įgyvendinimas savo MVC karkase

Dabar parašykime klasės Router ruošinį pagal mūsų iškvietimus:

<?php namespace Core; class Router { private $routes; public function getTrack($routes, $uri) { // čia bus kodas } } ?>

Metode getTrack mes turime nustatyti, kuris iš maršrutų atitinka šį $uri. Tam reikia pereiti mūsų masyvą su maršrutais ciklu:

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

Jei kuris nors maršrutas atitinka URI, mes turime gauti iš šio URI maršruto parametrų reikšmes ir grąžinti klasės Track objektą:

<?php namespace Core; class Router { public function getTrack($routes, $uri) { foreach ($routes as $route) { if (maršruto ir URI atitikimo patikrinimas) { $params = ; // reikia gauti parametrus iš uri return new Track($route->controller, $route->action, $params); } } return new Track('error', 'notFound'); // jei nei vienas maršrutas netiks } } ?>

Nukopijuokite mano klasės Router ruošinį ir patalpinkite jį faile /core/Router.php.

Įgyvendinkite aprašytą klasę Router, kuri grąžina klasės Track objektą. Jei patirsite sunkumų (kas gana tikėtina), pažiūrėkite į pirminį karkaso kodą, pagal kurį mokėtės MVC naudojimą. Ten klasėje Router rasite trūkstamą įgyvendinimo dalį ir mano komentarus jai.

Lietuvių
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Mes naudojame slapukus svetainės veikimui, analizei ir personalizavimui. Duomenų apdorojimas vyksta pagal Privatumo politiką.
priimti visus nustatyti atšaukti