Example #1
0
 public function getRegexMatch()
 {
     $uri = $this->data['uri'];
     foreach (\Router::getDefinedRoutes() as $route => $routeContents) {
         $routeDetails = explode('%%%', $route);
         $routeUriRegex = preg_replace('(/)', '(\\/)', $routeDetails[0]);
         foreach ($this->alternatives as $alternative => $alternativeVal) {
             $pattern = '/(' . $alternative . ')/is';
             if ($c = preg_match_all($pattern, $routeUriRegex, $matches)) {
                 $routeUriRegex = preg_replace($pattern, $alternativeVal, $routeUriRegex);
             }
         }
         if (preg_match('/^' . $routeUriRegex . '$/is', $uri)) {
             if ($routeDetails[1] == $this->data['type']) {
                 return $routeContents;
             }
         }
     }
 }