Open Journal Systems  3.3.0
UrlParser.php
1 <?php
2 
3 namespace Guzzle\Parser\Url;
4 
6 
12 class UrlParser implements UrlParserInterface
13 {
15  protected $utf8 = false;
16 
22  public function setUtf8Support($utf8)
23  {
24  $this->utf8 = $utf8;
25  }
26 
27  public function parseUrl($url)
28  {
29  Version::warn(__CLASS__ . ' is deprecated. Just use parse_url()');
30 
31  static $defaults = array('scheme' => null, 'host' => null, 'path' => null, 'port' => null, 'query' => null,
32  'user' => null, 'pass' => null, 'fragment' => null);
33 
34  $parts = parse_url($url);
35 
36  // Need to handle query parsing specially for UTF-8 requirements
37  if ($this->utf8 && isset($parts['query'])) {
38  $queryPos = strpos($url, '?');
39  if (isset($parts['fragment'])) {
40  $parts['query'] = substr($url, $queryPos + 1, strpos($url, '#') - $queryPos - 1);
41  } else {
42  $parts['query'] = substr($url, $queryPos + 1);
43  }
44  }
45 
46  return $parts + $defaults;
47  }
48 }
Guzzle\Common\Version\warn
static warn($message)
Definition: Version.php:23
Guzzle\Parser\Url\UrlParser\$utf8
$utf8
Definition: UrlParser.php:18
Guzzle\Parser\Url
Definition: UrlParser.php:3
Guzzle\Common\Version
Definition: Version.php:8
Guzzle\Parser\Url\UrlParser\parseUrl
parseUrl($url)
Definition: UrlParser.php:30
Guzzle\Parser\Url\UrlParserInterface
Definition: UrlParserInterface.php:8
Guzzle\Parser\Url\UrlParser\setUtf8Support
setUtf8Support($utf8)
Definition: UrlParser.php:25
Guzzle\Parser\Url\UrlParser
Definition: UrlParser.php:12