/** * 解析URI * * URI 由模块名/控制器/动作/参数组成,采用如下的格式: * * @code php * module/controller/action/param1/param2 * @endcode * */ public static function route() { $uri = application::uri(); //分解uri $uris = explode('/', trim($uri, '/')); //获取namespace 和 arguments $namespace = implode('/', array_slice($uris, 0, 3)); $arguments = array_slice($uris, 3); if ($namespace) { list(application::$module, application::$controller, application::$action) = explode('/', $namespace); } //处理参数 for ($i = 0, $cnt = count($arguments); $i < $cnt; $i++) { $arguments[$i] = rawurldecode($arguments[$i]); } application::$arguments = $arguments; }