Рутирање со именувани параметри во 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'];
?>
Преправете ги параметрите во вашите рутови на именувани.