Ejemplo n.º 1
0
    }
    $module = strtolower($module);
    $modules = \Yaf\Application::app()->getModules();
    if (in_array(ucfirst($module), $modules)) {
        $request->setModuleName($module);
    }
    if (false === strpos($uri, '?')) {
        $args = array();
    } else {
        list($uri, $args) = explode('?', $uri, 2);
        parse_str($args, $args);
    }
    foreach ($args as $k => $v) {
        $request->setParam($k, $v);
    }
    $request->setRequestUri($uri);
    if ($request->isRouted() && !empty($uri)) {
        if (false !== strpos($uri, '/')) {
            list($controller, $action) = explode('/', $uri);
            $request->setActionName($action);
        } else {
            $controller = $uri;
        }
        $request->setControllerName(ucfirst(strtolower($controller)));
    }
}
//设置默认模块
$request->setModuleName('Shell');
// route uri => request
\Yaf\Dispatcher::getInstance()->getRouter()->route($request);
// dispatch this request