⊗ppMVUFmRP 8 of 35 menu

Parametrlarin MVC-də PHP-də marşrutlarda istifadəsi

Əvvəlki dərsdə bizim marşrutlarımız sabit ünvanlara malik idi. Əslində marşrutlaşdırma mexanizmi daha mürəkkəbdir - elə etmək olar ki, səhifənin URI-nin bir hissəsi adlandırılmış parametrlərə düşsün və sonra nəzarətçidə əlçatan olsun.

Tutaq ki, məsələn, bizim ünvanlarımız belə görünür: /test/param1/param2/, burada param1param2 ixtiyari sətirlərdir. Eyni zamanda biz istəyirik ki, bu cür ünvanlar bir nəzarətçi hərəkəti tərəfindən idarə olunsun. Bunun üçün parametr üçün bir ad düşünmək lazımdır və onun qarşısına iki nöqtə qoymaq lazımdır, belə:

<?php use \Core\Route; return [ new Route('/test/:var1/:var2/', 'page', 'act'), ]; ?>

Bizim vəziyyətimizdə belə çıxacaq ki, bütün sorğular /test/parametr1/parametr2/ növündə olanlar act hərəkətinə düşəcək. Eyni zamanda bu hərəkətin ilk parametrinə parametrləri olan assosiativ massiv düşəcək: birinci parametrin yerində olan mətn, açarı 'var1' olan massiv elementinə düşəcək, ikinci parametrin mətni isə - 'var2'-yə düşəcək.

Tutaq ki, məsələn, ünvan sətirində aşağıdakı yazılıb: /test/eee/bbb/. Gəlin görək hərəkətin ilk parametrində nə olacaq:

<?php namespace Project\Controllers; use Core\Controller; class PageController extends Controller { public function act($params) { var_dump($params); // ['var1' => 'eee', 'var2' => 'bbb'] } } ?>

NumController nəzarətçisini edin, onun içində isə - sum hərəkətini edin. Bu hərəkət aşağıdakı növdə olan ünvanları idarə etsin: /nums/:n1/:n2/:n3/, burada parametrlər müəyyən ədədlər olacaq. Elə edin ki, ekrana ötürülən ədədlərin cəmi çıxsın.

Azərbaycan
AfrikaansБългарскиবাংলাБеларускаяČ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
Biz saytin işi, analitika və fərdiləşdirmə üçün cookie istifadə edirik. Məlumatların emalı Məxfilik Siyasəti əsasında həyata keçirilir.
hamısını qəbul et konfiqurasiya et rədd et