Example #1
0
 public function parseRoute($path)
 {
     $pathParams = array();
     $queryParams = array();
     if (!$path) {
         return;
     }
     $urlQuery = parse_url($path, PHP_URL_QUERY);
     $urlPath = trim(parse_url($path, PHP_URL_PATH), '/');
     $pathArr = explode('/', $urlPath);
     $module = APP . ucfirst($pathArr[0]) . '/Controller';
     if (file_exists($module)) {
         self::$module = ucfirst($pathArr[0]);
         if ($pathArr[1]) {
             self::$control = ucfirst($pathArr[1]);
         }
         if ($pathArr[2]) {
             self::$action = $pathArr[2];
         }
         $pathParams = array_slice($pathArr, 3);
     } else {
         if ($pathArr[0]) {
             self::$control = ucfirst($pathArr[0]);
         }
         if ($pathArr[1]) {
             self::$action = $pathArr[1];
         }
         $pathParams = array_slice($pathArr, 2);
     }
     if ($urlQuery) {
         $queryParams = $this->combineQuery($urlQuery);
     }
     $params = array_merge($pathParams, $queryParams);
     $this->combineParams($params);
 }