⊗ppMVUFmRPA 9 of 35 menu

Parametrų panaudojimas MVC maršrutuose PHP

Pažiūrėkime aprašyto panaudojimą realistesniame pavyzdyje. Tarkime, mūsų kontroleris PageController turi puslapių masyvą (šiuos duomenis turėtų grąžinti modelis, tačiau su modeliais dar nesiginčijome, todėl kol kas tegul duomenys tiesiog laikomi kontroleryje):

<?php namespace Project\Controllers; use Core\Controller; class PageController extends Controller { private $pages; public function __construct() { $this->pages = [ 1 => 'page 1', 2 => 'page 2', 3 => 'page 3', ]; } } ?>

Sukurkime veiksmą show, kuris atvaizduos ekrane puslapį su tam tikru numeriu (id):

<?php namespace Project\Controllers; use Core\Controller; class PageController extends Controller { private $pages; public function __construct() { $this->pages = [ 1 => 'page 1', 2 => 'page 2', 3 => 'page 3', ]; } public function show() { // čia atvaizduosime puslapį su tam tikru numeriu } } ?>

Tegul kreipiantis į adresą /page/1/ bus atvaizduojamas pirmojo puslapio tekstas, kreipiantis į adresą /page/2/ - antrojo puslapio tekstas ir taip toliau. Sukurkime atitinkamą maršrutą:

<?php use \Core\Route; return [ new Route('/page/:id/', 'page', 'show'), ]; ?>

Įgyvendinkime aprašytą metodą show:

<?php namespace Project\Controllers; use Core\Controller; class PageController extends Controller { private $pages; public function __construct() { $this->pages = [ 1 => 'page 1', 2 => 'page 2', 3 => 'page 3', ]; } public function show($params) { echo $this->pages[ $params['id'] ]; // atvaizduojame puslapį pagal numerį } } ?>

Įgyvendinkite kontrolerį UserController, kuriame yra toks masyvas:

<?php $this->users = [ 1 => ['name'=>'user1', 'age'=>'23', 'salary' => 1000], 2 => ['name'=>'user2', 'age'=>'24', 'salary' => 2000], 3 => ['name'=>'user3', 'age'=>'25', 'salary' => 3000], 4 => ['name'=>'user4', 'age'=>'26', 'salary' => 4000], 5 => ['name'=>'user5', 'age'=>'27', 'salary' => 5000], ]; ?>

Kontroleryje UserController, sukurkite veiksmą show, kuris atvaizduos vartotoją pagal nurodytą id. Tegul jis būna prieinamas adresu, kurio formatas: /user/:id/.

Kontroleryje UserController, sukurkite veiksmą info, kuris atvaizduos nurodyto vartotojo vardą arba amžių. Tegul šis veiksmas būna prieinamas adresu, kurio formatas: /user/:id/:key/, kur key gali turėti reikšmę 'name', 'age' arba 'salary'.

Kontroleryje UserController, sukurkite veiksmą all, kuris atvaizduos visų vartotojų sąrašą ekrane. Tegul šis veiksmas būna prieinamas adresu, kurio formatas: /user/all/ (čia jokių parametrų nebus).

Kontroleryje UserController, sukurkite veiksmą first, kuris atvaizduos N pirmųjų vartotojų sąrašą ekrane. Tegul šis veiksmas būna prieinamas adresu, kurio formatas: /user/first/:n/, kur parametre bus nurodytas vartotojų skaičius, kurį reikia atvaizduoti ekrane.

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