Roetering met Genoemde Parameters in PHP
Laat ons een van die gereelde uitdrukkings oorweeg wat URL's hanteer:
<?php
if (preg_match('#^/page/([a-z0-9_-]+)$#', $url, $params)) {
$page = include 'view/page/show.php';
}
?>
In hierdie geval blyk dit dat ons parameter in 'n vangsgroep beland. Dan haal ons die waarde van die parameter uit die vangsgroep volgens sy nommer:
<?php
$slug = $params[1];
?>
Dit is eintlik nie baie mooi nie, veral as daar verskeie parameters is. 'n Beter idee sou wees om parameters met name in plaas van nommers te maak. Vir hierdie doel gebruik ons genoemde vangsgroepe in ons gereelde uitdrukking:
<?php
if (preg_match('#^/page/(?<slug>[a-z0-9_-]+)$#', $url, $params)) {
$page = include 'view/page/show.php';
}
?>
In so 'n geval sal ons die waarde van die parameter volgens sy naam kan kry:
<?php
$slug = $params['slug'];
?>
Herskep die parameters in jou enjin se roetes na genoemdes.