예제 #1
0
 public function getRoute($controller, $parameters = null, $getParams = null)
 {
     /* @var $route RouterRoute */
     foreach ($this->controllerUrlMap as $c => $route) {
         $params = $route->getParameters();
         if (strtolower($c) === strtolower($controller) || stripos($c, $controller) === 0) {
             $url = $route->getUrl();
             $i = 0;
             foreach ($params as $param => $value) {
                 $value = isset($parameters[$param]) ? $parameters[$param] : $value;
                 $url = str_ireplace('{' . $param . '}', $value, $route->getUrl());
                 $i++;
             }
             $p = '';
             if ($getParams !== null) {
                 $p = '?' . Url::arrayToParams($getParams);
             }
             $url .= $p;
             return $url;
         }
     }
     return '/';
 }