PHP'de İsimlendirilmiş Parametrelerle Yönlendirme

URL'leri işleyen normal ifadelerden birini inceleyelim:

index.php<?php
  if (preg_match('#^/page/([a-z0-9_-]+)$#', $url, $params)) {
    $page = include 'view/page/show.php';
  }
?>

Bu durumda, parametremizin yakalama grubuna (capturing group) düştüğü ortaya çıkıyor. Daha sonra parametrenin değerini numarasına göre yakalama grubundan çıkarıyoruz:

view/page/show.php<?php
  $slug = $params[1];
?>

Bu aslında pek güzel değil, özellikle birden fazla parametre olacaksa. Daha iyi bir fikir, numaralar yerine isimlere sahip parametreler yapmaktır. Bunun için normal ifademizde isimlendirilmiş yakalama gruplarını kullanacağız:

index.php<?php
  if (preg_match('#^/page/(?<slug>[a-z0-9_-]+)$#', $url, $params)) {
    $page = include 'view/page/show.php';
  }
?>

Bu durumda, parametrenin değerini ismine göre alabileceğiz:

view/page/show.php<?php
  $slug = $params['slug'];
?>
Задание 1

Motorunuzdaki rota parametrelerini isimlendirilmiş olanlara dönüştürün.