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'];
?>
अपने इंजन के रूट में पैरामीटर को नामित पैरामीटर में बदलें।