⊗ppMVUFmRPA 9 of 35 menu

პარამეტრების გამოყენება რაუტებში MVC-ში PHP-ში

მოდით შევხედოთ აღწერილის გამოყენებას უფრო რეალურ მაგალითზე. დავუშვათ, ჩვენი კონტროლერი 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, შექმენით მეთოდი show, რომელიც გამოიტანს მომხმარებელს კონკრეტული id-ით. დავუშვათ ის იყოს ხელმისაწვდომი შემდეგი სახის მისამართზე: /user/:id/.

კონტროლერში UserController, შექმენით მეთოდი info, რომელიც გამოიტანს მოცემული მომხმარებლის სახელს ან ასაკს. დავუშვათ ეს მეთოდი იყოს ხელმისაწვდომი შემდეგი სახის მისამართზე: /user/:id/:key/, სადაც key ექნება მნიშვნელობა 'name', 'age' ან 'salary'.

კონტროლერში UserController, შექმენით მეთოდი all, რომელიც გამოიტანს ყველა მომხმარებლის სიას ეკრანზე. დავუშვათ ეს მეთოდი იყოს ხელმისაწვდომი შემდეგი სახის მისამართზე: /user/all/ (აქ პარამეტრები არ იქნება).

კონტროლერში UserController, შექმენით მეთოდი first, რომელიც გამოიტანს N პირველი მომხმარებლის სიას ეკრანზე. დავუშვათ ეს მეთოდი იყოს ხელმისაწვდომი შემდეგი სახის მისამართზე: /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
ვებსაიტის მუშაობის, ანალიტიკისა და პერსონალიზაციისთვის ვიყენებთ ქუქი-ფაილებს. მონაცემთა დამუშავება ხდება Კონფიდენციალურობის პოლიტიკის შესაბამისად.
ყველას მიღება პარამეტრები უარყოფა