我在这里使用代码(https://github.com/gregdel/php-router)作为重建我的简单路由器作为RESTful API的基础。
虽然在router.php的第49-52行(参见代码片段)中,开发人员使用循环,这意味着单个请求(方法和模式)有多个匹配。
我的问题是,是否应该为方法/模式进行多次匹配?我的理解是永远不会发生这种情况。
若在何种情况下如此?
//Run the matching routes
foreach ($this->_matchingRoutes as $route) {
$route->run();
}
答案 0 :(得分:1)
看看这个功能:
private function _findMatchingPattern($routes, $URI) {
//Reset the matching pattern array
$this->_matchingRoutes = array();
foreach ($routes as $route) {
if ($route->patternMatches($URI))
array_push($this->_matchingRoutes, $route);
}
}