Beispiel #1
0
 /**
  * Set the URI path string.
  *
  * @param   string  $path  The URI path string.
  *
  * @return  void
  *
  * @since   2.0
  */
 public function setPath($path)
 {
     $this->path = UriHelper::cleanPath($path);
 }
 /**
  * Parse a given URI and populate the class fields.
  *
  * @param   string  $uri  The URI string to parse.
  *
  * @return  boolean  True on success.
  *
  * @since   1.0
  */
 protected function parse($uri)
 {
     // Set the original URI to fall back on
     $this->uri = $uri;
     /*
      * Parse the URI and populate the object fields. If URI is parsed properly,
      * set method return value to true.
      */
     $parts = UriHelper::parse_url($uri);
     $retval = $parts ? true : false;
     // We need to replace & with & for parse_str to work right...
     if (isset($parts['query']) && strpos($parts['query'], '&')) {
         $parts['query'] = str_replace('&', '&', $parts['query']);
     }
     $this->scheme = isset($parts['scheme']) ? $parts['scheme'] : null;
     $this->user = isset($parts['user']) ? $parts['user'] : null;
     $this->pass = isset($parts['pass']) ? $parts['pass'] : null;
     $this->host = isset($parts['host']) ? $parts['host'] : null;
     $this->port = isset($parts['port']) ? $parts['port'] : null;
     $this->path = isset($parts['path']) ? $parts['path'] : null;
     $this->query = isset($parts['query']) ? $parts['query'] : null;
     $this->fragment = isset($parts['fragment']) ? $parts['fragment'] : null;
     // Parse the query
     if (isset($parts['query'])) {
         parse_str($parts['query'], $this->vars);
     }
     return $retval;
 }
 /**
  * Finds the correct route from the uri
  * @return Route
  */
 public function find()
 {
     return $this->findFromUri(UriHelper::cleanUri($_SERVER['REQUEST_URI']));
 }