⊗ppMVUFmRPA 9 of 35 menu

Verwendung von Parametern in Routen in MVC in PHP

Lassen Sie uns die beschriebene Anwendung an einem lebensnäheren Beispiel betrachten. Nehmen wir an, unser Controller PageController enthält ein Array von Seiten (diese Daten sollten vom Model geliefert werden, aber mit Models haben wir uns noch nicht befasst, daher lassen Sie uns die Daten vorerst einfach im Controller speichern):

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

Lassen Sie uns eine Aktion show erstellen, die eine Seite mit einer bestimmten Nummer (id) auf dem Bildschirm anzeigen wird:

<?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() { // hier werden wir die Seite mit einer bestimmten Nummer anzeigen } } ?>

Nehmen wir an, dass beim Aufruf der Adresse /page/1/ der Text der ersten Seite ausgegeben wird, beim Aufruf der Adresse /page/2/ - der Text der zweiten Seite und so weiter. Erstellen wir die entsprechende Route:

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

Implementieren wir die beschriebene Methode 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'] ]; // Seite nach Nummer ausgeben } } ?>

Implementieren Sie den Controller UserController, der das folgende Array enthält:

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

Erstellen Sie im Controller UserController eine Aktion show, die einen Benutzer anhand einer bestimmten id anzeigt. Lassen Sie sie unter einer Adresse des folgenden Typs erreichbar sein: /user/:id/.

Erstellen Sie im Controller UserController eine Aktion info, die den Namen oder das Alter eines bestimmten Benutzers ausgibt. Lassen Sie diese Aktion unter einer Adresse des folgenden Typs erreichbar sein: /user/:id/:key/, wobei key den Wert 'name', 'age' oder 'salary' haben wird.

Erstellen Sie im Controller UserController eine Aktion all, die eine Liste aller Benutzer auf dem Bildschirm ausgibt. Lassen Sie diese Aktion unter einer Adresse des folgenden Typs erreichbar sein: /user/all/ (hier gibt es keine Parameter).

Erstellen Sie im Controller UserController eine Aktion first, die eine Liste der ersten N Benutzer auf dem Bildschirm ausgibt. Lassen Sie diese Aktion unter einer Adresse des folgenden Typs erreichbar sein: /user/first/:n/, wobei im Parameter die Anzahl der Benutzer steht, die auf dem Bildschirm ausgegeben werden sollen.

Deutsch
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskΕλληνικά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
Wir verwenden Cookies für den Betrieb der Website, Analyse und Personalisierung. Die Datenverarbeitung erfolgt gemäß der Datenschutzerklärung.
alle akzeptieren anpassen ablehnen