private function getRoutesFromIndex (&$routes, &$routesIndex, &$requestMethod, &$requestPathParts, $requestPathIndex = 0) {
        if (!empty($requestPathParts[$requestPathIndex])) {
            $requestPathPart = $requestPathParts[$requestPathIndex];
            if (array_key_exists($requestPathPart, $routesIndex)) {
                $this->getRoutesFromIndex($routes,$routesIndex[$requestPathPart], $requestMethod, $requestPathParts, $requestPathIndex + 1);
            }
            if (array_key_exists(self::ROUTE_PARAMETER_WILDCARD, $routesIndex)) {
                $this->getRoutesFromIndex($routes,$routesIndex[self::ROUTE_PARAMETER_WILDCARD], $requestMethod, $requestPathParts, $requestPathIndex + 1);
            }
        }
        else if (array_key_exists(self::ROUTE_ACTIONS_KEY, $routesIndex)) {
            $testRoutes = &$routesIndex[self::ROUTE_ACTIONS_KEY];
            if (array_key_exists($requestMethod, $testRoutes)) {
                $this->getRoutesFromIndexActions($routes,$testRoutes[$requestMethod], $requestMethod,$requestPathParts);
            }
            if (array_key_exists(self::ROUTE_GENERIC_METHOD, $testRoutes)) {
                $this->getRoutesFromIndexActions($routes,$testRoutes[self::ROUTE_GENERIC_METHOD], $requestMethod, $requestPathParts);
            }
        }

        if (array_key_exists(self::ROUTE_GENERIC_ACTIONS_KEY, $routesIndex)) {
            $testRoutes = &$routesIndex[self::ROUTE_GENERIC_ACTIONS_KEY];
            if (array_key_exists($requestMethod, $testRoutes)) {
                $this->getRoutesFromIndexActions($routes,$testRoutes[$requestMethod], $requestMethod, $requestPathParts);
            }
            if (array_key_exists(self::ROUTE_GENERIC_METHOD, $testRoutes)) {
                $this->getRoutesFromIndexActions($routes,$testRoutes[self::ROUTE_GENERIC_METHOD], $requestMethod, $requestPathParts);
            }
        }
    }
private function getRoutesFromIndex (&$routes, &$routesIndex, &$requestMethod, &$requestPathParts, $requestPathIndex = 0) {
        if (!empty($requestPathParts[$requestPathIndex])) {
            $requestPathPart = $requestPathParts[$requestPathIndex];
            if (array_key_exists($requestPathPart, $routesIndex)) {
                $this->getRoutesFromIndex($routes,$routesIndex[$requestPathPart], $requestMethod, $requestPathParts, $requestPathIndex + 1);
            }
            if (array_key_exists(self::ROUTE_PARAMETER_WILDCARD, $routesIndex)) {
                $this->getRoutesFromIndex($routes,$routesIndex[self::ROUTE_PARAMETER_WILDCARD], $requestMethod, $requestPathParts, $requestPathIndex + 1);
            }
        }
        else if (array_key_exists(self::ROUTE_ACTIONS_KEY, $routesIndex)) {
            $testRoutes = &$routesIndex[self::ROUTE_ACTIONS_KEY];
            if (array_key_exists($requestMethod, $testRoutes)) {
                $this->getRoutesFromIndexActions($routes,$testRoutes[$requestMethod], $requestMethod,$requestPathParts);
            }
            if (array_key_exists(self::ROUTE_GENERIC_METHOD, $testRoutes)) {
                $this->getRoutesFromIndexActions($routes,$testRoutes[self::ROUTE_GENERIC_METHOD], $requestMethod, $requestPathParts);
            }
        }

        if (array_key_exists(self::ROUTE_GENERIC_ACTIONS_KEY, $routesIndex)) {
            $testRoutes = &$routesIndex[self::ROUTE_GENERIC_ACTIONS_KEY];
            if (array_key_exists($requestMethod, $testRoutes)) {
                $this->getRoutesFromIndexActions($routes,$testRoutes[$requestMethod], $requestMethod, $requestPathParts);
            }
            if (array_key_exists(self::ROUTE_GENERIC_METHOD, $testRoutes)) {
                $this->getRoutesFromIndexActions($routes,$testRoutes[self::ROUTE_GENERIC_METHOD], $requestMethod, $requestPathParts);
            }
        }
    }
private function getRoutesFromIndex ( & $ routes , & $ routesIndex , & $ requestMethod , & $ requestPathParts , $ requestPathIndex = 0 ) { if ( ! empty ( $ requestPathParts [ $ requestPathIndex ] ) ) { $ requestPathPart = $ requestPathParts [ $ requestPathIndex ] ; if ( array_key_exists ( $ requestPathPart , $ routesIndex ) ) { $ this -> getRoutesFromIndex ( $ routes , $ routesIndex [ $ requestPathPart ] , $ requestMethod , $ requestPathParts , $ requestPathIndex + 1 ) ; } if ( array_key_exists ( self :: ROUTE_PARAMETER_WILDCARD , $ routesIndex ) ) { $ this -> getRoutesFromIndex ( $ routes , $ routesIndex [ self :: ROUTE_PARAMETER_WILDCARD ] , $ requestMethod , $ requestPathParts , $ requestPathIndex + 1 ) ; } } else if ( array_key_exists ( self :: ROUTE_ACTIONS_KEY , $ routesIndex ) ) { $ testRoutes = & $ routesIndex [ self :: ROUTE_ACTIONS_KEY ] ; if ( array_key_exists ( $ requestMethod , $ testRoutes ) ) { $ this -> getRoutesFromIndexActions ( $ routes , $ testRoutes [ $ requestMethod ] , $ requestMethod , $ requestPathParts ) ; } if ( array_key_exists ( self :: ROUTE_GENERIC_METHOD , $ testRoutes ) ) { $ this -> getRoutesFromIndexActions ( $ routes , $ testRoutes [ self :: ROUTE_GENERIC_METHOD ] , $ requestMethod , $ requestPathParts ) ; } } if ( array_key_exists ( self :: ROUTE_GENERIC_ACTIONS_KEY , $ routesIndex ) ) { $ testRoutes = & $ routesIndex [ self :: ROUTE_GENERIC_ACTIONS_KEY ] ; if ( array_key_exists ( $ requestMethod , $ testRoutes ) ) { $ this -> getRoutesFromIndexActions ( $ routes , $ testRoutes [ $ requestMethod ] , $ requestMethod , $ requestPathParts ) ; } if ( array_key_exists ( self :: ROUTE_GENERIC_METHOD , $ testRoutes ) ) { $ this -> getRoutesFromIndexActions ( $ routes , $ testRoutes [ self :: ROUTE_GENERIC_METHOD ] , $ requestMethod , $ requestPathParts ) ; } } }
Obtiene una ruta desde un indice de rutas
@param $routes
@param $routesIndex
@param $requestMethod
@param $requestPathParts
@param int $requestPathIndex
Obtiene una ruta desde un indice de rutas