⊗ppMVDFmRrIm 27 of 35 menu

Өз MVC фреймворкуңуз үчүн роутерди ишке ашыруу

Эми биздин чакырууларыбызга ылайык 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 файлына жайгаштырыңыз.

Силерге сүрөттөлгөн Router классты ишке ашырыңыз, натыйжаңыз Track класстын объектин кайтарышы керек. Эгерде кыйынчылыктарды башыңыздан өткөрсөңүз (бул мүмкүн), анда сиз 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 файлдарын колдонобуз. Маалыматтарды иштетүү Маалыматты коргоо саясаты боюнча жүргүзүлөт.
баарын кабыл алуу ыңгайлаштыруу четке кагуу