⊗ppMVUFmRPA 9 of 35 menu

Användning av parametrar i rutter i MVC i PHP

Låt oss titta på tillämpningen av det som beskrivits med ett mer verkligt exempel. Låt vår kontroller PageController innehålla en array med sidor (dessa data bör levereras av modellen, men vi har inte gått igenom modeller än, så låt data för nu bara lagras i kontrollern):

<?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', ]; } } ?>

Låt oss skapa en åtgärd show som kommer att skriva ut en sida med ett specifikt nummer (id) på skärmen:

<?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() { // här kommer vi att skriva ut sidan med ett specifikt nummer } } ?>

Låt vid förfrågan till adressen /page/1/ texten på den första sidan visas, vid förfrågan till adressen /page/2/ - texten på den andra sidan, och så vidare. Låt oss skapa motsvarande rutt:

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

Låt oss implementera den beskrivna metoden 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'] ]; // skriver ut sidan efter nummer } } ?>

Implementera kontrollern UserController, som innehåller följande array:

<?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], ]; ?>

I kontrollern UserController, skapa en åtgärd show som kommer att visa användaren med ett specifikt id. Låt den var tillgänglig via en adress av följande typ: /user/:id/.

I kontrollern UserController, skapa en åtgärd info som kommer att visa namnet eller åldern på en given användare. Låt denna åtgärd vara tillgänglig via en adress av följande typ: /user/:id/:key/, där key kommer att ha värdet 'name', 'age' eller 'salary'.

I kontrollern UserController, skapa en åtgärd all som kommer att visa listan över alla användare på skärmen. Låt denna åtgärd var tillgänglig via en adress av följande typ: /user/all/ (här finns inga parametrar alls).

I kontrollern UserController, skapa en åtgärd first som kommer att visa listan över de N första användarna på skärmen. Låt denna åtgärd vara tillgänglig via en adress av följande typ: /user/first/:n/, där parametern innehåller antalet användare som ska visas på skärmen.

Svenska
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Vi använder kakor för webbplatsens funktion, analys och personalisering. Behandling av data sker i enlighet med Integritetspolicyn.
acceptera alla anpassa avvisa