PHP da Nomi Berilgan Parametrlar bilan Routing
URL ni qayta ishlaydigan muntazam ifodalardan birini ko'rib chiqamiz:
<?php
if (preg_match('#^/page/([a-z0-9_-]+)$#', $url, $params)) {
$page = include 'view/page/show.php';
}
?>
Bunday holda, bizning parametrimiz karmonga tushadi. Keyin parametr qiymatini uning raqami bo'yicha karmondan olamiz:
<?php
$slug = $params[1];
?>
Bu, aslida, ayniqsa bir nechta parametr bo'lganda, juda chiroyli emas. Raqamlar o'rniga nomi berilgan parametrlarni yaratish yaxshiroq fikr bo'ladi. Buning uchun muntazam ifodamizda nomi berilgan karmonlardan foydalanamiz:
<?php
if (preg_match('#^/page/(?<slug>[a-z0-9_-]+)$#', $url, $params)) {
$page = include 'view/page/show.php';
}
?>
Bunday holda, biz parametr qiymatini uning nomi bo'yicha olishimiz mumkin:
<?php
$slug = $params['slug'];
?>
Dvijokingizdagi routlardagi parametrlarni nomi berilganlarga o'zgartiring.