class Url implements JsonSerializable

Mutable representation of a URL.

scheme  user  password  host  port      path        query    fragment
  |      |      |        |      |        |            |         |
/--\   /--\ /------\ /-------\ /--\/------------\ /--------\ /------\
http://john:x0y17575@nette.org:8042/en/manual.php?name=param#fragment  <-- absoluteUrl
\______\__________________________/
    |               |
 hostUrl        authority

Properties

static $defaultPorts
string $scheme
string $user
string $password
string $host
int $port
string $path
string $query
string $fragment
string read-only $absoluteUrl
string read-only $authority
string read-only $hostUrl
string read-only $basePath
string read-only $baseUrl
string read-only $relativeUrl
array read-only $queryParameters

Methods

__construct(UrlImmutable|null $url = null)

No description

Url
setScheme(string $scheme)

No description

string
getScheme()

No description

Url
setUser(string $user)

No description

string
getUser()

No description

Url
setPassword(string $password)

No description

string
getPassword()

No description

Url
setHost(string $host)

No description

string
getHost()

No description

string
getDomain(int $level = 2)

Returns the part of domain.

Url
setPort(int $port)

No description

int|null
getPort()

No description

int|null
getDefaultPort()

No description

Url
setPath(string $path)

No description

string
getPath()

No description

Url
setQuery(string|array $query)

No description

Url
appendQuery(string|array $query)

No description

string
getQuery()

No description

array
getQueryParameters()

No description

mixed
getQueryParameter(string $name)

No description

Url
setQueryParameter(string $name, mixed $value)

No description

Url
setFragment(string $fragment)

No description

string
getFragment()

No description

string
getAbsoluteUrl()

No description

string
getAuthority()

Returns the [user[:pass]@]host[:port] part of URI.

string
getHostUrl()

Returns the scheme and authority part of URI.

string
getBasePath()

No description

string
getBaseUrl()

No description

string
getRelativeUrl()

No description

bool
isEqual(UrlImmutable $url)

URL comparison.

Url
canonicalize()

Transforms URL to canonical form.

string
__toString()

No description

string
jsonSerialize()

No description

array
export()

No description

static string
unescape(string $s, string $reserved = '%;/?:@&=+$,')

Similar to rawurldecode, but preserves reserved chars encoded.

static array
parseQuery(string $s)

Parses query string. Is affected by directive arg_separator.input.

static bool
isAbsolute(string $url)

Determines if URL is absolute, ie if it starts with a scheme followed by colon.

static string
removeDotSegments(string $path)

Normalizes a path by handling and removing relative path references like '.', '..' and directory traversal.

Details

at line 67
__construct(UrlImmutable|null $url = null)

No description

Parameters

UrlImmutable|null $url

Exceptions

InvalidArgumentException

at line 90
Url setScheme(string $scheme)

No description

Parameters

string $scheme

Return Value

Url

at line 97
string getScheme()

No description

Return Value

string

at line 103
Url setUser(string $user)

No description

Parameters

string $user

Return Value

Url

at line 112
string getUser()

No description

Return Value

string

at line 120
Url setPassword(string $password)

No description

Parameters

string $password

Return Value

Url

at line 129
string getPassword()

No description

Return Value

string

at line 137
Url setHost(string $host)

No description

Parameters

string $host

Return Value

Url

at line 145
string getHost()

No description

Return Value

string

at line 154
string getDomain(int $level = 2)

Returns the part of domain.

Parameters

int $level

Return Value

string

at line 166
Url setPort(int $port)

No description

Parameters

int $port

Return Value

Url

at line 173
int|null getPort()

No description

Return Value

int|null

at line 179
int|null getDefaultPort()

No description

Return Value

int|null

at line 185
Url setPath(string $path)

No description

Parameters

string $path

Return Value

Url

at line 196
string getPath()

No description

Return Value

string

at line 202
Url setQuery(string|array $query)

No description

Parameters

string|array $query

Return Value

Url

at line 209
Url appendQuery(string|array $query)

No description

Parameters

string|array $query

Return Value

Url

at line 218
string getQuery()

No description

Return Value

string

at line 224
array getQueryParameters()

No description

Return Value

array

at line 230
mixed getQueryParameter(string $name)

No description

Parameters

string $name

Return Value

mixed

at line 236
Url setQueryParameter(string $name, mixed $value)

No description

Parameters

string $name
mixed $value

Return Value

Url

at line 243
Url setFragment(string $fragment)

No description

Parameters

string $fragment

Return Value

Url

at line 250
string getFragment()

No description

Return Value

string

at line 256
string getAbsoluteUrl()

No description

Return Value

string

at line 267
string getAuthority()

Returns the [user[:pass]@]host[:port] part of URI.

Return Value

string

at line 284
string getHostUrl()

Returns the scheme and authority part of URI.

Return Value

string

at line 291
string getBasePath()

No description

Return Value

string

at line 300
string getBaseUrl()

No description

Return Value

string

at line 308
string getRelativeUrl()

No description

Return Value

string

at line 319
bool isEqual(UrlImmutable $url)

URL comparison.

Parameters

UrlImmutable $url

Return Value

bool

at line 343
Url canonicalize()

Transforms URL to canonical form.

Return Value

Url

at line 356
string __toString()

No description

Return Value

string

at line 362
string jsonSerialize()

No description

Return Value

string

at line 369
final array export()

internal  
 

No description

Return Value

array

at line 395
static string unescape(string $s, string $reserved = '%;/?:@&=+$,')

Similar to rawurldecode, but preserves reserved chars encoded.

Parameters

string $s
string $reserved

Return Value

string

at line 415
static array parseQuery(string $s)

Parses query string. Is affected by directive arg_separator.input.

Parameters

string $s

Return Value

array

at line 428
static bool isAbsolute(string $url)

Determines if URL is absolute, ie if it starts with a scheme followed by colon.

Parameters

string $url

Return Value

bool

at line 437
static string removeDotSegments(string $path)

Normalizes a path by handling and removing relative path references like '.', '..' and directory traversal.

Parameters

string $path

Return Value

string

Traits

SmartObject