Esempio n. 1
0
 /**
  * Add
  *
  * @param string $line
  * @return bool
  */
 public function add($line)
 {
     $uriParser = new UriParser($line);
     $uri = $uriParser->encode();
     if (!$uriParser->validate() || in_array($uri, $this->sitemaps)) {
         return false;
     }
     $this->sitemaps[] = $uri;
     return true;
 }
Esempio n. 2
0
 /**
  * Get path and query
  *
  * @param string $uri
  * @return string
  * @throws ClientException
  */
 private function getPath($uri)
 {
     $uriParser = new UriParser($uri);
     // Prepare uri
     $uriParser->encode();
     $uri = $uriParser->stripFragment();
     if (mb_strpos($uri, '/') === 0) {
         // URI is already an path
         return $uri;
     }
     if (!$uriParser->validate()) {
         throw new ClientException('Invalid URI');
     }
     $path = ($path = parse_url($uri, PHP_URL_PATH)) === null ? '/' : $path;
     $query = ($query = parse_url($uri, PHP_URL_QUERY)) === null ? '' : '?' . $query;
     return $path . $query;
 }