⊗ppMVUFmRPA 9 of 35 menu

PHP'деги MVC'деги роуттордо параметрлерди колдонуу

Келгиле, сүрөттөлгөн нерсени колдонууну чын өмүрдөгү мисалда көрөлү. Биздин контроллер PageController барактардын массивин камтысын (бул маалыматтарды модель тарабынан берүү керек, бирок биз моделдер менен дагы талкуулабайбыз, андыктан маалыматтар азырынча контроллерде гана сакталсын):

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

Келгиле, show аракетин жасайлы, ал экранга белгилүү бир номерлүү баракты чыгарат (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() { // бул жерде биз белгилүү бир номерлүү баракты көрсөтөбүз } } ?>

/page/1/ дарегине киргенде бирінчи барактын тексти чыксын, /page/2/ дарегине киргенде - экинчи барактын тексти жана башкалар. Туура роутту жасайлы:

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

Сүрөттөлгөн 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'] ]; // номер боюнча баракты көрсөтөбүз } } ?>

Төмөнкү массивди камтыган UserController контроллерин ишке ашырыңыз:

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

UserController контроллеринде, белгилүү бир id боюнча колдонуучуну көрсөткөн show аракетин жасаңыз. Ал төмөнкү түрдөгү дарек менен жеткиликтүү болсун: /user/:id/.

UserController контроллеринде, берилген колдонуучунун атын же жашын көрсөткөн info аракетин жасаңыз. Бул аракет төмөнкү түрдөгү дарек менен жеткиликтүү болсун: /user/:id/:key/, бул жерде key 'name', 'age' же 'salary' маанисин алат.

UserController контроллеринде, бардык колдонуучулардын тизмесин экранга чыгарган all аракетин жасаңыз. Бул аракет төмөнкү түрдөгү дарек менен жеткиликтүү болсун: /user/all/ (бул жерде эч кандай параметрлер болбойт).

UserController контроллеринде, бирінчи N колдонуучулардын тизмесин экранга чыгарган first аракетин жасаңыз. Бул аракет төмөнкү түрдөгү дарек менен жеткиликтүү болсун: /user/first/:n/, бул жерде параметрде экранга чыгарылуучу колдонуучулардын саны көрсөтүлөт.

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