⊗ppMVDFmRr 25 of 35 menu

Maršrutizatoriaus kūrimas savo MVC karkase

Dabar jums reikia sukurti maršrutizatorių. Jis yra klasė, kuri paims maršrutų masyvą, paims užklaustą URL, ir nustatys, kuris maršrutas atitinka duotąjį URL. Radęs atitinkantį maršrutą, mūsų klasė turi gauti URL dalis, atitinkančias maršruto parametrus.

Tegul mūsų maršrutizatorius grąžina Track klasės objektą, kuriame yra kontrolerio vardas, kuris turi būti iškviestas pagal šią užklausą, veiksmo vardas ir parametrai iš URL.

Tegul mūsų Track klasė turi savybes controller, action ir params, prieinamus tik skaitymui:

<?php namespace Core; class Track { private $controller; private $action; private $params; public function __construct($controller, $action, $params) { $this->controller = $controller; $this->action = $action; $this->params = $params; } public function __get($property) { return $this->$property; } } ?>

Pavyzdys

Pavyzdžiui, tarkime adreso juostoje įvestas /test/1/2/. Tarkime, mes turime maršrutą, atitinkantį šį adresą:

<?php new Route('/test/:var1/:var2/', 'test', 'index'); ?>

Tai reiškia, kad kontrolerio vardas bus test, veiksmo vardas - index, o parametrų masyvas bus toks:

<?php ['var1' => 1, 'var2' => 2] ?>

Šios pamokos tikslas - parašyti Router klasę, grąžinančią Track klasės objektą. Visa kita mūsų kol kas neliečia. Pradėkime rašyti šią klasę.

Praktinės užduotys

Nukopijuokite mano Track klasės kodą ir patalpinkite jį faile /core/Track.php.

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