/**
  * Returns the base path of the request.
  *
  * @return  object  A KHttpUrl object
  */
 public static function base()
 {
     if (!isset(self::$_base)) {
         // Get the base request path
         if (strpos(PHP_SAPI, 'cgi') !== false && !ini_get('cgi.fix_pathinfo') && !empty($_SERVER['REQUEST_URI'])) {
             // PHP-CGI on Apache with "cgi.fix_pathinfo = 0"
             // We don't have user-supplied PATH_INFO in PHP_SELF
             $path = $_SERVER['PHP_SELF'];
         } else {
             $path = $_SERVER['SCRIPT_NAME'];
         }
         $path = rtrim(dirname($path), '/\\');
         // Sanitize the url since we can't trust the server var
         $path = KService::get('koowa:filter.url')->sanitize($path);
         self::$_base = KService::get('koowa:http.url', array('url' => $path));
     }
     return self::$_base;
 }
示例#2
0
 /**
  * Returns the base path of the request.
  *
  * @return  object  A KHttpUri object
  */
 public static function base()
 {
     if (!isset(self::$_base)) {
         // Get the base request path
         if (strpos(php_sapi_name(), 'cgi') !== false && !empty($_SERVER['REQUEST_URI'])) {
             //Apache CGI
             $path = rtrim(dirname($_SERVER['PHP_SELF']), '/\\');
         } else {
             //Others
             $path = rtrim(dirname($_SERVER['SCRIPT_NAME']), '/\\');
         }
         // Sanitize the url since we can't trust the server var
         $path = KFactory::get('lib.koowa.filter.url')->sanitize($path);
         self::$_base = KFactory::tmp('lib.koowa.http.uri', array('uri' => $path));
     }
     return self::$_base;
 }