PHP да номланган параметрлар билан рутинг
URL-манзилни ишловчи маълум регуляр ифодаларнинг бирини кўриб чиқамиз:
<?php
if (preg_match('#^/page/([a-z0-9_-]+)$#', $url, $params)) {
$page = include 'view/page/show.php';
}
?>
Бу ҳолда, бизнинг параметримиз "карман"га тушгани ҳосил бўлади. Сўнгра параметр қийматини унинг тартиб рақами бўйича "карман"дан оламиз:
<?php
$slug = $params[1];
?>
Бу, айниқса параметрлар сони кўп бўлганда, жуда яхши эмас. Тартиб рақамлари ўрнига номланган параметрларни яратиш яхшироқ идея бўлар эди. Бунинг учун регуляр ифодада номланган "карман"лардан фойдаланамиз:
<?php
if (preg_match('#^/page/(?<slug>[a-z0-9_-]+)$#', $url, $params)) {
$page = include 'view/page/show.php';
}
?>
Бундай ҳолда биз параметр қийматини унинг номи бўйича олиш имконига эга бўламиз:
<?php
$slug = $params['slug'];
?>
Сизнинг ишловчи механизмингиздаги рутлардаги параметрларни номланган параметрларга ўзгартиринг.