/** * 返回包含由客户端提供的、跟在真实脚本名称之后并且在查询语句(query string)之前的路径信息 * * <pre>Example: * 请求: http://www.tintsoft.com/example/index.php?a=test * 返回: a=test * </pre> * * @throws Base_Exception */ private static function _init_path_info() { $request_uri = self::get_request_uri(); $script_url = self::get_script_url(); $base_url = self::get_base_url(); if (strpos($request_uri, $script_url) === 0) { $path_info = substr($request_uri, strlen($script_url)); } elseif ($base_url === '' || strpos($request_uri, $base_url) === 0) { $path_info = substr($request_uri, strlen($base_url)); } elseif (strpos($_SERVER['PHP_SELF'], $script_url) === 0) { $path_info = substr($_SERVER['PHP_SELF'], strlen($script_url)); } else { throw new Base_Exception('[Base.Base_Request._init_path_info] determine the entry path info failed!!'); } // if (($pos = strpos ( $path_info, '?' )) !== false) $path_info = // substr ( $path_info, $pos + 1 ); self::$_path_info = trim($path_info, '/'); }