function detect_uri() { // $_SERVER['REQUEST_URI']: 访问此页面所需的URI // $_SERVER["SCRIPT_NAME"]: 当前脚本的路径 if ( ! isset($_SERVER['REQUEST_URI']) OR ! isset($_SERVER['SCRIPT_NAME'])) { return ''; } $uri = $_SERVER['REQUEST_URI']; if (strpos($uri, $_SERVER['SCRIPT_NAME']) === 0) { //去掉共同部分,取得对路由有用的部分。 $uri = substr($uri, strlen($_SERVER['SCRIPT_NAME'])); } //任何路由信息的传递,可以直接返回 if ($uri == '/' || empty($uri)) { return '/'; } // 如果 strpos($uri, $_SERVER['SCRIPT_NAME']) === 0和elseif都无法匹配的时候, // 返回这个url的path部分。 $uri = parse_url($uri, PHP_URL_PATH); // 将路径中的 '//' 或 '../' 等进行清理 return str_replace(array('//', '../'), '/', trim($uri, '/')); }