⊗ppMVDFmRr 25 of 35 menu

Marsruuteri arendamine oma MVC raamistikus

Nüüd peate arendama marsruuteri. See on klass, mis võtab marsruutide massiivi, võtab päritud URL-i, ja määrab, milline marsruut vastab antud URL-ile. Pärast vastava marsruudi leidmist peab meie klass saama URL-i osad, mis vastavad marsruudi parameetritele.

Olgu meie marsruuteri tulemuseks klassi Track objekt, mis sisaldab kontrolleri nime, mida peaks kutsuma antud päringule, tegevuse nime ja URL-i parameetreid.

Olgu meie klassi Track omadusteks controller, action ja params, millele on ainult lugemisõigus:

<?php namespace Core; class Track { private $controller; private $action; private $params; public function __construct($controller, $action, $params) { $this->controller = $controller; $this->action = $action; $this->params = $params; } public function __get($property) { return $this->$property; } } ?>

Näide

Näiteks, oletame, et aadressiribale on sisestatud /test/1/2/. Oletame, et meil on marsruut, mis vastab sellele aadressile:

<?php new Route('/test/:var1/:var2/', 'test', 'index'); ?>

See tähendab, et kontrolleri nimi on test, tegevuse nimi - index, ja parameetrite massiiv on järgmine:

<?php ['var1' => 1, 'var2' => 2] ?>

Selle õppetunni eesmärk on kirjutada klass Router, mis tagastab klassi Track objekti. Ülejäänu meid praegu ei puuduta. Hakkame kirjutama seda klassi.

Praktilised ülesanded

Kopeerige minu klassi Track kood ja asetage see faili /core/Track.php.

Eesti
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Me kasutame saidi toimimiseks, analüüsi ja personaliseerimiseks küpsiseid. Andmete töötlemine toimub vastavalt Privaatsuspoliitikale.
nõustu kõigega häälesta keeldu