⊗ppMVDFmRrIm 27 of 35 menu

Өз MVC фреймворкіңіздегі routerді іске асыру

Енді өз шақыруларымызға сәйкес Router класының қалыптасын жазайық:

<?php namespace Core; class Router { private $routes; public function getTrack($routes, $uri) { // осында код болады } } ?>

getTrack әдісінде берілген $uri-ға роуттардың қайсысы сәйкес келетінін анықтауымыз керек. Ол үшін роуттар массивін циклмен қайталау керек:

<?php namespace Core; class Router { public function getTrack($routes, $uri) { foreach ($routes as $route) { // $uri және $route тексеруі } } } ?>

Егер қандай да бір роут URI-ге сәйкес келсе, біз осы URI-ден роут параметрлерінің мәндерін алып, Track класының нысанын қайтаруымыз керек:

<?php namespace Core; class Router { public function getTrack($routes, $uri) { foreach ($routes as $route) { if (роут пен URI сәйкестігін тексеру) { $params = ; // uri-ден параметрлерді алу керек return new Track($route->controller, $route->action, $params); } } return new Track('error', 'notFound'); // ешбір роут сәйкес келмесе } } ?>

Router класының қалыптасын көшіріп алып, оны /core/Router.php файлына орналастырыңыз.

Track класының нысанын қайтаратын Router класын жүзеге асырыңыз. Егер қиындық туындаса (бұлай болуы мүмкін), MVC қолдануды зерттеген фреймворктың бастапқы кодынан қараңыз. Онда Router класында жетіспейтін іске асыру бөлігін және оған арналған түсініктемелерімді таба аласыз.

Қазақ
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართული한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Біз сайттың жұмысы, аналитика және персонализация үшін cookie файлдарын қолданамыз. Деректерді өңдеу Құпиялылық саясаты бойынша жүреді.
барлығын қабылдау баптау қабылдамау