⊗ppMVUFmRPA 9 of 35 menu

MVC da PHP da Routlarda Parametrlarni Qo'llash

Keling, tavsiflangan narsani amaliy misolda ko'rib chiqaylik. Faraz qilaylik, bizning PageController kontrollerimizda sahifalar massivi mavjud (ushbu ma'lumotlarni model topshirishi kerak, lekin biz hali modellar bilan tanishmaganmiz, shuning uchun hozircha ma'lumotlar kontrollerda saqlansin):

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

Keling, show amalini yarataylik, u ma'lum bir raqamli (id) sahifani ekranda ko'rsatadi:

<?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() { // bu yerda ma'lum bir raqamdagi sahifani ko'rsatamiz } } ?>

Faraz qilaylik, /page/1/ manziliga murojaat qilganda birinchi sahifa matni ko'rsatilsin, /page/2/ manziliga murojaat qilganda - ikkinchi sahifa matni va hokazo. Keling, mos keladigan routni yaratamiz:

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

Keling, tavsiflangan show metodini amalga oshiramiz:

<?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'] ]; // raqam bo'yicha sahifani ko'rsatamiz } } ?>

Quyidagi massivni o'z ichiga olgan UserController kontrollerini yarating:

<?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 kontrollerida, ma'lum bir id bo'yicha foydalanuvchini ko'rsatadigan show amalini yarating. U quyidagi ko'rinishdagi manzil orqali ochiq bo'lsin: /user/:id/.

UserController kontrollerida, berilgan foydalanuvchining ismi yoshi yoki maoshini ko'rsatadigan info amalini yarating. Ushbu amal quyidagi ko'rinishdagi manzil orqali ochiq bo'lsin: /user/:id/:key/, bu yerda key 'name', 'age' yoki 'salary' qiymatiga ega bo'ladi.

UserController kontrollerida, barcha foydalanuvchilar ro'yxatini ekranda ko'rsatadigan all amalini yarating. Ushbu amal quyidagi ko'rinishdagi manzil orqali ochiq bo'lsin: /user/all/ (bu yerda hech qanday parametr bo'lmaydi).

UserController kontrollerida, birinchi N ta foydalanuvchilar ro'yxatini ekranda ko'rsatadigan first amalini yarating. Ushbu amal quyidagi ko'rinishdagi manzil orqali ochiq bo'lsin: /user/first/:n/, bu yerda parametrda ekranda ko'rsatilishi kerak bo'lgan foydalanuvchilar soni bo'ladi.

Oʻzbek
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекTiếng Việt
Biz sayt ishlashi, tahlil qilish va shaxsiylashtirish uchun cookie-fayllardan foydalanamiz. Ma'lumotlarni qayta ishlash Maxfiylik siyosatiga muvofiq amalga oshiriladi.
hammasini qabul qilish sozlash rad etish