private function findAction(&$pathInfo, &$path)
{
$controllerPath = $controllerName = '';
$routeAppHierarchy = Config::get('route_app_hierarchy', 1);
$i = 0;
$controllerSuffix = Config::get('controller_suffix');
while ($dir = array_shift($pathInfo)) {
$controllerName = ucfirst($dir);
$controller = Cml::getApplicationDir('apps_path') . $path . Cml::getApplicationDir('app_controller_path_name') . '/' . $controllerPath . $controllerName . $controllerSuffix . '.php';
if ($i >= $routeAppHierarchy && is_file($controller)) {
self::$urlParams['controller'] = $controllerPath . $controllerName;
break;
} else {
if ($i++ < $routeAppHierarchy) {
$path .= $dir . '/';
} else {
$controllerPath .= $dir . '/';
}
}
}
empty(self::$urlParams['controller']) && (self::$urlParams['controller'] = $controllerName);
//用于404的时候挂载插件用
self::$urlParams['action'] = array_shift($pathInfo);
}